使用C#和WPF。我有很多文本框都像这样绑定数据:
Text="{Binding ZipCode, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
我需要一个事件处理程序,当用户在框中单击或制表以输入数据时,会将ZipCode
设置为""
。发布的代码有效,但是我需要其他文本框使用它。我可以和发件人一起做吗?这是单击或切换到文本框中时清空文本框的最佳方法吗?谢谢。
private void ClearZipCode_GotKeyboardFocus(object sender, keyboardFocusChangedEventArgs e)
{
allSettings.ZipCode = "";
}
答案 0 :(得分:3)
创建一个具有文本框的用户控件,并使用您在自定义控件中就地编写的代码来处理此要求。
然后根据需要重新使用新控件。
答案 1 :(得分:1)
发送方始终是触发事件的对象,因此将其强制转换为TextBox然后设置值即可实现所需的功能,但是OmegaMan的解决方案所需的XAML更少,可重复使用性更好。
if (sender is TextBox zipCtrl)
{
zipCtrl.Text = "";
}