希望输入数据时文本框为空

时间:2019-04-01 16:31:05

标签: c# wpf

使用C#和WPF。我有很多文本框都像这样绑定数据:

Text="{Binding ZipCode, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"

我需要一个事件处理程序,当用户在框中单击或制表以输入数据时,会将ZipCode设置为""。发布的代码有效,但是我需要其他文本框使用它。我可以和发件人一起做吗?这是单击或切换到文本框中时清空文本框的最佳方法吗?谢谢。

private void ClearZipCode_GotKeyboardFocus(object sender, keyboardFocusChangedEventArgs e)
{
    allSettings.ZipCode = "";
}

2 个答案:

答案 0 :(得分:3)

创建一个具有文本框的用户控件,并使用您在自定义控件中就地编写的代码来处理此要求。

然后根据需要重新使用新控件。

答案 1 :(得分:1)

发送方始终是触发事件的对象,因此将其强制转换为TextBox然后设置值即可实现所需的功能,但是OmegaMan的解决方案所需的XAML更少,可重复使用性更好。

if (sender is TextBox zipCtrl)
{
    zipCtrl.Text = "";
}