Stylus.Capture 方法

定义

捕获绑定到特定元素的触笔。

重载

名称 说明
Capture(IInputElement)

将触笔捕获到指定元素。

Capture(IInputElement, CaptureMode)

将触笔捕获到指定元素。

Capture(IInputElement)

将触笔捕获到指定元素。

public:
 static bool Capture(System::Windows::IInputElement ^ element);
public static bool Capture(System.Windows.IInputElement element);
static member Capture : System.Windows.IInputElement -> bool
Public Shared Function Capture (element As IInputElement) As Boolean

参数

element
IInputElement

要捕获触笔到的元素。

返回

true 如果触笔被捕获到 element,则为 ;否则为 false

示例

下面的示例演示如何记录触笔的坐标,即使触笔离开触 TextBox笔的边界。 此示例假定有一个TextBox调用,textBox1并且StylusDownStylusUp事件和StylusMove事件已连接到事件处理程序。

void textbox1_StylusDown(object sender, StylusDownEventArgs e)
{
    Stylus.Capture(textbox1);
}

void textbox1_StylusMove(object sender, StylusEventArgs e)
{
    Point pos = e.GetPosition(textbox1);
    textbox1.AppendText("X: " + pos.X + " Y: " + pos.Y + "\n");
}

void textbox1_StylusUp(object sender, StylusEventArgs e)
{
    Stylus.Capture(textbox1, CaptureMode.None);
}
Private Sub textbox1_StylusDown(ByVal sender As Object, ByVal e As System.Windows.Input.StylusDownEventArgs) _
    Handles textbox1.StylusDown

    Stylus.Capture(textbox1)

End Sub


Private Sub textbox1_StylusMove(ByVal sender As Object, ByVal e As StylusEventArgs) _
    Handles textbox1.StylusMove

    Dim pos As Point = e.GetPosition(textbox1)
    textbox1.AppendText("X: " & pos.X.ToString() & " Y: " & pos.Y.ToString() & vbLf)

End Sub


Private Sub textbox1_StylusUp(ByVal sender As Object, ByVal e As StylusEventArgs) _
    Handles textbox1.StylusUp

    Stylus.Capture(textbox1, CaptureMode.None)

End Sub

注解

Capture(IInputElement)使用此方法可确保element即使游标超出元素边界,也能接收触笔事件。 若要释放触笔,请使用 Capture(IInputElement, CaptureMode) 设置为 CaptureModeNone..

此方法 Capture(IInputElement) 返回 falseelement 可见或启用。

适用于

Capture(IInputElement, CaptureMode)

将触笔捕获到指定元素。

public:
 static bool Capture(System::Windows::IInputElement ^ element, System::Windows::Input::CaptureMode captureMode);
public static bool Capture(System.Windows.IInputElement element, System.Windows.Input.CaptureMode captureMode);
static member Capture : System.Windows.IInputElement * System.Windows.Input.CaptureMode -> bool
Public Shared Function Capture (element As IInputElement, captureMode As CaptureMode) As Boolean

参数

element
IInputElement

要捕获触笔到的元素。

captureMode
CaptureMode

其中一个 CaptureMode 值。

返回

true 如果触笔被捕获到 element,则为 ;否则为 false

示例

下面的示例演示如何记录触笔的坐标,即使触笔离开触 TextBox笔的边界。 此示例假定有一个TextBox调用textBox1,并且StylusDownStylusUp该调用和StylusMove事件连接到事件处理程序。

void textbox1_StylusDown(object sender, StylusDownEventArgs e)
{
    Stylus.Capture(textbox1);
}

void textbox1_StylusMove(object sender, StylusEventArgs e)
{
    Point pos = e.GetPosition(textbox1);
    textbox1.AppendText("X: " + pos.X + " Y: " + pos.Y + "\n");
}

void textbox1_StylusUp(object sender, StylusEventArgs e)
{
    Stylus.Capture(textbox1, CaptureMode.None);
}
Private Sub textbox1_StylusDown(ByVal sender As Object, ByVal e As System.Windows.Input.StylusDownEventArgs) _
    Handles textbox1.StylusDown

    Stylus.Capture(textbox1)

End Sub


Private Sub textbox1_StylusMove(ByVal sender As Object, ByVal e As StylusEventArgs) _
    Handles textbox1.StylusMove

    Dim pos As Point = e.GetPosition(textbox1)
    textbox1.AppendText("X: " & pos.X.ToString() & " Y: " & pos.Y.ToString() & vbLf)

End Sub


Private Sub textbox1_StylusUp(ByVal sender As Object, ByVal e As StylusEventArgs) _
    Handles textbox1.StylusUp

    Stylus.Capture(textbox1, CaptureMode.None)

End Sub

注解

Capture(IInputElement, CaptureMode)使用此方法可确保element即使游标超出元素边界,也能接收触笔事件。 若要释放触笔,请使用 Capture(IInputElement, CaptureMode) 设置为 CaptureModeNone..

此方法 Capture(IInputElement, CaptureMode) 返回 falseelement 可见或启用。

适用于