我正在使用WPF 我有一个简单的GUI,有2个文本框,2个单选按钮 我想将GUI组件设置为默认值(未选中空文本和单选按钮的文本框) 我该怎么办? 感谢。
说明:
我收到每1秒tcp消息
如果标题是EMPTY_TEXT我想在一个命令清除所有gui。现在我只有2个文本框,它很简单,但将来我有50-60个文本框,我正在寻找另一种清除文本的方法,而不是为每个文本框设置文本为空。
答案 0 :(得分:2)
假设您正在使用MVVM,下一个代码就是您的用户界面:
<Grid>
<TextBlock Text="Name:"/>
<TextBox Text="{Binding NewName, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/>
<Button Command="{Binding ResetCommand}"/>
</Grid>
当 MyClass 是DataContext
public class MyClass : INotifyPropertyChanged
{
#region INotifyPropertyChanged
// ....
#endregion
#region Data Members
private ICommand _resetCommand;
private string _newName;
#endregion
#region Data Members
public ICommand ResetCommand
{
get
{
if (_restNewCCommand == null)
_resCommand = new DelegateCommand(resetCommand, canResetCommand);
return _resetCommand;
}
}
public string NewName
{
get
{
return _newName;
}
set
{
_newName = value;
OnPropertyChanged("NewName");
}
}
#endregion
#region Commands Callbacks
private void resetCommand(object obj)
{
//Reset inputs
NewName = String.Empty;
}
private bool canResetCommand(object obj)
{
return true;
}
#endregion
}
注意:
可以采用/推导出DelegateCommand
课程from here。
答案 1 :(得分:0)
你可能有你的XAML和代码吗?如果你想从后面的代码中清空控件,你应该给它们一个名称,以便能够访问它们,然后你可以像S.Akbari建议的那样清空它们。