考虑一个包含多列和多行的 Farpoint 扩展控件。在输入/按多个字母键时,应选择已输入单词组合的行。
示例:如果键入“a”、“n”、“u”,它应该自动选择名称为 anusha 的行。如果输入了“j”、“a”,它应该自动选择与该组合相关的行(jack、jane 等)。
当我使用下面的代码时,keyChar 的值始终是单个字符(a,b,c,..)。如果我尝试输入'a','n','u',它不会显示 anusha。它显示以 a(ambi)、n(nisha) 和 u(uma) 开头的其他名称。这是因为每次按下按键时都会调用 keypress 事件。现在我关心的是如何让 keyChar 接受字符串?
private void Keypress(object sender,KeyPressEventArgs e)
{
If(e.KeyChar != (char)Keys.Enter && e.KeyChar != (char)Keys.Escape)
{
ABCFunction.SpreadKeyAction(SftTaskTree, e.KeyChar.ToString(), Name_Col_Pos);
}
}
我尝试使用变量来存储和暂停线程特定时间。即使这也不起作用,因为每次它进入“if”循环并使存储的变量为空。
private void Keypress(object sender,KeyPressEventArgs e)
{
store = store + e.KeyChar.ToString();
Thread.Sleep(1500);
If(e.KeyChar != (char)Keys.Enter && e.KeyChar != (char)Keys.Escape)
{
ABCFunction.SpreadKeyAction(SftTaskTree, store , Name_Col_Pos);
store = String.Empty;
}
}
请任何人帮助解决这个问题...