C#在WPF中使用TextBox,Button和更多填充动态网格

时间:2010-12-11 09:24:21

标签: c# wpf uniformgrid

  • VS2010 -C# 我有一个TextBox,您可以在其中输入一个整数,并使用整数个UniformGrid单元格动态生成UniformGrid。现在,如果我想为每个UniformGrid单元格添加一个TextBox,我会执行以下操作(例如int为5):
  

TextBox [] tb = new TextBox [5];
   for(int i = 0; i <5; i ++)
              {
                  tb [i] = new Textbox();
                  UniformGrid1.Children.Add(TB [1]);
              }

好的..这很好用。但是当我还需要在其中填充一些Texbox,Buttons和Labels并定义了一些设计属性时,问题就来了,可能还会在UniformGrid Cell中插入一个网格。如果我为每个控件创建数组并在循环中定义每个数组属性,它将变得非常混乱。 不仅它很乱,我不能把文本框放在UniformGrid的Cell网格中。孩子们在TextBox的顶部添加网格。

有没有更好的方法来解决这个问题?

2 个答案:

答案 0 :(得分:2)

您应该使用DataBinding。

使ItemsControl将其绑定到ObservableCollection并使用UniformGrid作为ItemsControl的容器。

答案 1 :(得分:1)

我认为使用像DataGrid这样的专用控件会更好,因为它会自动创建双向绑定到模型,易于维护等等。有很多例子,例如here (如果你问“wpf datagrid示例教程”),Google可以帮助你找到更多信息。