我正在使用WPF和C#应用程序。在一个窗口中,我有许多文本框按照用户需要以5列和多行排列。它的工作原理如下:最初5行文本框的第一行是可见的,用户输入适当的值,只要他在行的第5个文本框中点击ENTER
,就会为新条目生成一个新的相似行文本框。这继续发生。每个文本框使用RegisterName
方法和循环具有唯一的名称。在事件Keydown中获取发件人文本框名称
现在我的问题是,假设我已经在窗口上创建了大约25个文本框的5行。我专注于第三行的一个文本框,并键入引发KeyDown事件的事件。在这个keydown事件中,我需要导致此事件的所有文本框的名称。我怎样才能做到这一点?
这样做,也将帮助我访问该行的所有其他文本框,因为我知道它们命名的术语。请帮忙。
为什么我们需要'box.Name'和'RegisterName()'? – 2013-04-21 11:45:32
@SamarthAgarwal AFAIK这是因为RegisterName()实际上并未按照您的想法“设置”名称。它在给定的命名上下文中注册给定的控件名称。因此,如果需要,您可以在不同的上下文中使用不同的名称进行注册。它确保给定的名称在该上下文中是唯一的或抛出。 Name属性就像在xaml中定义x:Name一样。如果您尝试将Storyboards连接到代码创建的控件,则需要RegisterName()作为文档状态。 – Viv 2013-04-21 13:32:14
谢谢。这真的有帮助 – 2013-04-21 14:16:11