嘿伙计们,following tutorial显示了如何从文本框中获取文本,并在用户点击按钮时将其显示在文本块中。很简单......但我想做的不是点击一个按钮来添加我想要输入按钮的文本。
在这里搜索,我发现了以下代码,但它似乎没有做任何事情。
private void textBox_KeyDown(object sender, KeyEventArgs e)
{
if (e.Key == Key.Enter)
{
listBox.Items.Add(textBox.Text);
}
}
因此,具有该字符串的文本框称为文本框,我希望将该文本框中的文本添加到我的列表(listBox)中。当我单击“输入”按钮时,它什么都不做。有什么帮助吗?
谢谢!
答案 0 :(得分:6)
您可以从屏幕键盘上截取输入键,但不能从运行模拟器的PC的键盘上截取。
以下是一些证明其有效的代码:
创建新的电话应用程序。 将以下内容添加到内容网格
<ListBox Height="276" HorizontalAlignment="Left" Margin="14,84,0,0" Name="listBox1" VerticalAlignment="Top" Width="460" />
然后在后面的代码中添加以下内容:
private void textBox1_KeyDown(object sender, KeyEventArgs e)
{
if (e.Key == Key.Enter)
{
this.listBox1.Items.Add(textBox1.Text);
}
}
答案 1 :(得分:1)
如果您还没有这样做,则需要将此事件处理程序连接到文本框KeyDown事件。您可以通过属性窗口中的“事件”选项卡执行此操作,同时定位文本框 - 或者您可以双击那里,VS将为您创建一个新的事件处理程序,您可以将上述代码放入其中。
答案 2 :(得分:0)
@Court从你给出的答案@Trees我可以假设你不确定KeyDown
是否有线。您在XAML文件中是否有以下代码?
<TextBox Height="32" HorizontalAlignment="Left" Margin="13,-2,0,0" Name="textBox1" Text="" VerticalAlignment="Top" Width="433" KeyDown="textBox1_KeyDown" />
@Matt Lacey拦截从PC的键盘输入也可以
答案 3 :(得分:0)
看起来你需要处理KeyUp事件。