我在 WPF 中完全是菜鸟。我刚刚打开了 MS Visual Studio Express 2013 Preview,我正在尝试做一些“Hello World!” 应用程序。我注意到当我向窗体添加控件时,例如 TextBox,该控件没有名称分配。
这是正常的吗?以及如何从代码中更改其属性?
在 WPF 中,仅出于以下原因,几乎只需要提供一个控件名称:
如果它不是其中之一,则真的没有必要命名您的控件。您会发现,一旦您开始使用 MVVM 作为您的主要设计模式,您很少需要知道代码中控件的名称。开始习惯于更改 XAML 中的属性,而不是代码。
您应该使用该Name
属性并提供唯一标识符:
<TextBox Name="UniqueName">
Value
</TextBox>
Name
只有当您找到一种方法来实际定位没有名称的控件时才能在代码中分配值- 有点冗长而不是使用标记,除非您将控件添加到无论如何,窗口都是动态的,因此已经直接引用了该元素。
该控件没有名称分配。正常吗?如何从代码更改其属性
创建控件后,您可以访问它的所有属性,例如
Textbox tb = new TextBox();
tb.Name = "textBox1";
tb.Text = "Hello world";
someStackPanel.Children.Add(tb);