Esempio n. 1
0
        /// <summary>
        /// メッセージダイアログ
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private async void MessageDialog_Click(object sender, RoutedEventArgs e)
        {
            var dlg = new MessageDialog("メッセージ", "タイトル");
            // It doesn't work on .NET 5
            // ((IInitializeWithWindow)(object)dlg).Initialize(new WindowInteropHelper(this).Handle);
            var withWindow = dlg.As <IInitializeWithWindow>();;

            withWindow.Initialize(new WindowInteropHelper(Application.Current.MainWindow).Handle);

            await dlg.ShowAsync();
        }
Esempio n. 2
0
        public static void Initialize(this MessageDialog md, Window window = null)
        {
            IInitializeWithWindow initializeWithWindowWrapper = md.As <IInitializeWithWindow>();
            IntPtr hwnd;

            if (window == null)
            {
                hwnd = PInvoke.User32.GetActiveWindow();
            }
            else
            {
                hwnd = window.As <IWindowNative>().WindowHandle;
            };
            initializeWithWindowWrapper.Initialize(hwnd);
        }
Esempio n. 3
0
        public static void Initialize(this MessageDialog md, IntPtr hWndArg)
        {
            IInitializeWithWindow initializeWithWindowWrapper = md.As <IInitializeWithWindow>();
            IntPtr hwnd;

            if (hWndArg == IntPtr.Zero)
            {
                hwnd = PInvoke.User32.GetActiveWindow();
            }
            else
            {
                hwnd = hWndArg;
            }

            initializeWithWindowWrapper.Initialize(hwnd);
        }