我是WPF和C#的新手,所以我要问的是TextBox的TextChanged事件是否有退格事件?
我制作了一个小型图书馆程序,租用书籍,所有内容都在ListView上查看
我目前所做的是你只需在文本框中输入就可以过滤书名,所以如果你有1000本书并且输入了字母' b'那么你可能只有150本以' b'开头的书
问题是每当我按退格键时,我希望它先恢复到原来的状态
例如:输入" bob"然后删除了b,我得到了bo,现在我想展示每个开头的东西" bo"。
现在我明白了。我只需要另一个textChanged事件。但有些事情需要告知文本已经改变,我需要更好的东西
if (backspace key is pressed) { Invoke textChanged }
Thx伙计们!
好吧,我应该删除帖子吗?也许其他人有一天会搜索它 退格实际上是自动导致TextChanged事件!该死的。无论如何,谢谢!
答案 0 :(得分:1)
https://msdn.microsoft.com/en-us/library/system.windows.forms.control.keydown(v=vs.110).aspx
以下是msdn网站上的参考资料。
http://csharp.net-informations.com/gui/key-press-cs.htm 在另一个站点(更容易阅读)这虽然看起来像是Win Forms。
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar == (char)Keys.Enter)
{
MessageBox.Show("Enter key pressed");
}
if (e.KeyChar == 13)
{
MessageBox.Show("Enter key pressed");
}
}
看起来你需要创建一个触发按键的事件,然后获取该键的值。我认为有一个Keys.Backspace
,但要知道,intellisense会帮助你。