我在WPF中完全是菜鸟。我刚刚打开了MS Visual Studio Express 2013预览版,我正在尝试做一些“Hello World!”应用程序。我注意到当我向表单添加控件时,例如TextBox,该控件没有指定名称。
这是正常的吗?我如何从代码中更改其属性?
答案 0 :(得分:3)
在WPF中,控件需要提供几乎完全出于以下原因的名称:
如果不是其中之一,则无需为控件命名。一旦开始使用MVVM作为主要设计模式,您就会发现很少需要知道代码中控件的名称。开始习惯在XAML中更改属性,而不是代码。
答案 1 :(得分:2)
您应该使用Name
属性并提供唯一标识符:
<TextBox Name="UniqueName">
Value
</TextBox>
只有当你找到一种方法来实际找到控件而不是一个名字时才能在代码中分配Name
值 - 这有点啰嗦而不是使用标记,除非,即你动态地将控件添加到窗口,因此已经直接引用了元素。
答案 2 :(得分:1)
添加“名称”属性
Msdn doc:
http://msdn.microsoft.com/en-us/library/system.windows.frameworkelement.name.aspx
答案 3 :(得分:0)
该控件没有指定名称。这是正常的吗?如何从代码
更改其属性
创建控件后,您可以访问其所有属性,如
Textbox tb = new TextBox();
tb.Name = "textBox1";
tb.Text = "Hello world";
someStackPanel.Children.Add(tb);