2010-12-11 41 views
0
  • VS2010 -C# 我在這裏可以輸入一個整數和一個UniformGrid被動態UniformGrid細胞的整數產生一個TextBox。現在,如果我想一個TextBox添加到每個UniformGrid細胞,i執行以下操作(例如int是一個5):

文本框[] TB =新文本框[5]; (int i = 0; i < 5; i ++)
{
tb [i] = new Textbox();
UniformGrid1.Children.Add(tb [i]);
}
C#填寫動態網格與文本框,按鈕和更多的WPF

好的,那很好。但是,當我需要在一些設計屬性中定義更多的Texboxes,Buttons和Labels時,也可能會在UniformGrid Cell中插入一個網格。如果我爲每個控件創建數組並在循環中定義每個數組屬性,它將變得非常混亂。 不僅它是混亂的,我不能把文本框放在UniformGrid的Cell's Grid中。孩子們將網格添加到TextBox的頂部。

有沒有更好的方法來解決這個問題?

回答

1

我認爲使用像DataGrid這樣的專門控件會更好,因爲它會自動創建雙向綁定到模型,易於維護等等。有很多示例,例如here(Google可以幫助您查找更多,如果你問一些像「wpf datagrid示例教程」)

2

您應該改用DataBinding。

使一個ItemsControl綁定到ObservableCollection並使用UniformGrid作爲ItemsControl的容器。