我想知道是否可以多次使用同一事件。我有一个comboBox,当选择项目A时,我只希望用户输入数字。另一方面,如果用户选择项目B,我想允许用户仅在同一文本框中输入字母。我正在使用“PreviewTextInput”事件并知道如何制定这些限制,例如:
private void textBoxKun_PreviewTextInput(object sender, TextCompositionEventArgs e)
{
Regex regex = new Regex("[^0-9]+");
e.Handled = regex.IsMatch(e.Text);
}
但我如何实现我想要的功能?
答案 0 :(得分:1)
这看起来很简单,我会冒险回答。请注意,您的问题不完整。你真的需要指定A和B的项目。
private void textBoxKun_PreviewTextInput(object sender, TextCompositionEventArgs e)
{
Regex regex = null;
if ( A.isChecked ) {
regex = new Regex("[^0-9]+");
} else {
regex = new Regex("[^A-Za-z]+");
}
e.Handled = regex.IsMatch(e.Text);
}
答案 1 :(得分:0)
如果我理解你的问题,你正在寻找的功能似乎是"如果"关键字;)
只需检查组合的SelectedValue(或SelectedItem,或SelectedText,根据您的需要),看看它是A还是B,并根据它做正确的事情。
if (combo.SelectedText == "A")
dosomething();
else if (combo.SelectedText == "B")
dosomethingelse();
在您的活动中。
如果我误解了这个问题,请更好地解释一下......