Share via


PenInputPanel.InputFailed Event

PenInputPanel.InputFailed Event

Occurs when input focus changes before the PenInputPanel object was able to insert user input into the attached control.

Definition

Visual Basic .NET Public Event InputFailed As PenInputPanelInputFailedEventHandler
C# public event PenInputPanelInputFailedEventHandler InputFailed;
Managed C++ public: __event PenInputPanelInputFailedEventHandler InputFailed;

Remarks

The event handler receives an argument of type PenInputPanelInputFailedEventArgs containing data about this event.

The InputFailed event occurs when input focus changes before user input was inserted into the attached control. For example, if the user enters ink into the writing pad, then taps on another edit control before the recognizer has had a chance to finish, this event will fire.

Using the window handle passed into this event, you can choose to insert the text yourself when this event occurs.

Examples

[C#]

This C# example creates two PenInputPanel objects, thePenInputPanel1 and thePenInputPanel2, and attaches them to TextBox Leave Site controls, textBox1 and textBox2. It adds a PenInputPanelInputFailedEventHandler, InputFailed_Event, to each PenInputPanel. In the event handler, if focus has changed, the text is set in the previous TextBox Leave Site control by setting its Text Leave Site property.

//...

// Declare PenInputPanel objects
PenInputPanel thePenInputPanel1;
PenInputPanel thePenInputPanel2;

public Form1()
{
    // Required for Windows Form Designer support
    InitializeComponent();

    // Create, and attach new PenInputPanels to a TextBox controls.
    thePenInputPanel1 = new PenInputPanel(textBox1);
    thePenInputPanel2 = new PenInputPanel(textBox2);

    // Add an InputFailed event handler to each PenInputPanel
    thePenInputPanel1.InputFailed +=
        new PenInputPanelInputFailedEventHandler(InputFailed_Event);

    thePenInputPanel2.InputFailed +=
        new PenInputPanelInputFailedEventHandler(InputFailed_Event);
}

//...

public void InputFailed_Event(object sender,
PenInputPanelInputFailedEventArgs e)
{
    // Make sure the object that generated
    // the event is a PenInputPanel object
    if (sender is PenInputPanel)
    {
        PenInputPanel theSenderPanel = (PenInputPanel)sender;

        // Set the text in the previous control
        theSenderPanel.AttachedEditControl.Text += e.Text;
    }
}

[Visual Basic .NET]

This Microsoft® Visual Basic® .NET example creates two PenInputPanel objects, thePenInputPanel1 and thePenInputPanel2, and attaches them to TextBox Leave Site controls, TextBox1 and TextBox2. It adds a PenInputPanelInputFailedEventHandler, InputFailed_Event, to each PenInputPanel. In the event handler, if focus has changed, the text is set in the previous TextBox Leave Site control by setting its Text Leave Site property.

'...

' Declare the PenInputPanel objects
Dim thePenInputPanel1 As PenInputPanel
Dim thePenInputPanel2 As PenInputPanel

Public Sub New()
    MyBase.New()

    'This call is required by the Windows Form Designer.
    InitializeComponent()

    ' Create and attach new PenInputPanels to a TextBox controls.
    thePenInputPanel1 = New PenInputPanel(TextBox1)
    thePenInputPanel2 = New PenInputPanel(TextBox2)

    ' Add an InputFailed event handler to each PenInputPanel
    AddHandler thePenInputPanel1.InputFailed, AddressOf InputFailed_Event
    AddHandler thePenInputPanel2.InputFailed, AddressOf InputFailed_Event
End Sub 'New

'...

Public Sub InputFailed_Event(ByVal sender As Object, ByVal e As _
                             PenInputPanelInputFailedEventArgs)
    ' Make sure the object that generated
    ' the event is a PenInputPanel object
    If TypeOf sender Is PenInputPanel Then
        Dim thePenInputPanel As PenInputPanel = CType(sender, PenInputPanel)

        ' Set the text in the previous control
        thePenInputPanel.AttachedEditControl.Text += e.Text
    End If
End Sub 'InputFailed_Event

See Also