2012-03-07 77 views

回答

2

您可以使用OnTap()OnDoubleTap() TextBox的方法。在每種方法中,您可以定義不同的邏輯並將焦點設置在TextBox上。

更新:

下面是關於如何使工作簡單的代碼結構:

XAML:

<TextBox x:Name="InputTextBox" Margin="0,0,0,520" /> 

C#

public MainPage() 
{ 
    InitializeComponent(); 
    InputTextBox.Tap += InputTextBoxTap; 
    InputTextBox.DoubleTap += InputTextBoxDoubleTap; 
} 

private void InputTextBoxDoubleTap(object sender, System.Windows.Input.GestureEventArgs e) 
{ 
    InputTextBox.Text = "Double tapped!"; 
} 

private void InputTextBoxTap(object sender, System.Windows.Input.GestureEventArgs e) 
{ 
    InputTextBox.Text = "Tapped!"; 
} 

我在模擬器和設備上都測試過它,它在兩種情況下都能正常工作!

+0

OnDoubleTap()方法根本不會調用 – revolutionkpi 2012-03-07 15:31:55

+0

您是在模擬器還是在真實設備上測試過? – Abbas 2012-03-07 15:32:49

+0

在Debud中,它不會使用這種方法,使用模擬器 – revolutionkpi 2012-03-07 15:36:02

0

原因很簡單。

如果你已經注意到,如果你想讓他們像您可以選擇從屬性「鼠標點擊」事件一樣提供的參數是不同的

private void textBox1_MouseDoubleClick(object sender, MouseEventArgs e) 
{ 

} 

private void textBox1_Click(object sender, EventArgs e) 
{ 

} 

是。 乾杯!

+0

該代碼不適用於Silverlight for Windows Phone版本中的TextBox。檢查MSDN:http://bit.ly/xYV58f – Abbas 2012-03-07 14:57:46

+0

是的,我沒有這個事件,很可惜 – revolutionkpi 2012-03-07 15:33:51