コード例 #1
0
 private void OnHyperlinkClicked(object sender, RoutedEventArgs e)
 {
     if (HyperlinkClicked != null)
     {
         HyperlinkClicked.Invoke(sender, e);
     }
 }
コード例 #2
0
        public TaskDialog()
        {
            config.StructSize = ( uint )Marshal.SizeOf(config);
            config.Callback   = (IntPtr hwnd, TaskDialogNotification msg, IntPtr wParam, IntPtr lParam, IntPtr lpRefData) =>
            {
                TaskDialogEventArgs commonEventArgs;
                switch (msg)
                {
                case TaskDialogNotification.Created:
                {
                    var eventArgs = new TaskDialogEventArgs()
                    {
                        TaskDialogHandle = hwnd
                    };
                    Created?.Invoke(this, eventArgs);
                    commonEventArgs = eventArgs;
                }
                break;

                case TaskDialogNotification.Destroyed:
                {
                    var eventArgs = new TaskDialogEventArgs()
                    {
                        TaskDialogHandle = hwnd
                    };
                    Destroyed?.Invoke(this, eventArgs);
                    commonEventArgs = eventArgs;
                }
                break;

                case TaskDialogNotification.DialogConstructed:
                {
                    var eventArgs = new TaskDialogEventArgs()
                    {
                        TaskDialogHandle = hwnd
                    };
                    Constructed?.Invoke(this, eventArgs);
                    commonEventArgs = eventArgs;
                }
                break;

                case TaskDialogNotification.Help:
                {
                    var eventArgs = new TaskDialogEventArgs()
                    {
                        TaskDialogHandle = hwnd
                    };
                    Help?.Invoke(this, eventArgs);
                    commonEventArgs = eventArgs;
                }
                break;

                case TaskDialogNotification.ButtonClicked:
                {
                    var eventArgs = new ButtonClickedEventArgs(( int )wParam)
                    {
                        TaskDialogHandle = hwnd
                    };
                    ButtonClicked?.Invoke(this, eventArgs);
                    commonEventArgs = eventArgs;
                }
                break;

                case TaskDialogNotification.RadioButtonClicked:
                {
                    var eventArgs = new ButtonClickedEventArgs(( int )wParam)
                    {
                        TaskDialogHandle = hwnd
                    };
                    RadioButtonClicked?.Invoke(this, eventArgs);
                    commonEventArgs = eventArgs;
                }
                break;

                case TaskDialogNotification.HyperlinkClicked:
                {
                    string url = null;
                    unsafe { url = new string (( char * )lParam ); }
                    var eventArgs = new HyperLinkClickedEventArgs(url)
                    {
                        TaskDialogHandle = hwnd
                    };
                    HyperlinkClicked?.Invoke(this, eventArgs);
                    commonEventArgs = eventArgs;
                }
                break;

                case TaskDialogNotification.ExpendOButtonClicked:
                {
                    var eventArgs = new ExpandButtonClickedEventArgs(wParam.ToInt32() == 0 ? false : true)
                    {
                        TaskDialogHandle = hwnd
                    };
                    ExpandButtonClicked?.Invoke(this, eventArgs);
                    commonEventArgs = eventArgs;
                }
                break;

                case TaskDialogNotification.VerificationClicked:
                {
                    var eventArgs = new VerificationClickedEventArgs(wParam.ToInt32() == 0 ? false : true)
                    {
                        TaskDialogHandle = hwnd
                    };
                    VerificationClicked?.Invoke(this, eventArgs);
                    commonEventArgs = eventArgs;
                }
                break;

                case TaskDialogNotification.Navigated:
                {
                    var eventArgs = new TaskDialogEventArgs()
                    {
                        TaskDialogHandle = hwnd
                    };
                    Navigated?.Invoke(this, eventArgs);
                    commonEventArgs = eventArgs;
                }
                break;

                case TaskDialogNotification.Timer:
                {
                    var eventArgs = new TimerEventArgs(TimeSpan.FromMilliseconds(( uint )wParam))
                    {
                        TaskDialogHandle = hwnd
                    };
                    Timer?.Invoke(this, eventArgs);
                    commonEventArgs = eventArgs;
                }
                break;

                default:
                    return(0);
                }
                return(commonEventArgs.ReturnValue);
            };
        }
コード例 #3
0
 /// <summary>
 /// Raises the <see cref="E:HyperlinkClicked" /> event.
 /// </summary>
 /// <param name="e">The <see cref="EventArgs"/> instance containing the event data.</param>
 protected virtual void OnHyperlinkClicked(HyperLinkEventArgs e)
 {
     HyperlinkClicked?.Invoke(this, e);
 }