我有一個dataGrid
其中有兩列,我想在我的.cs文件中使用dataGrid1.Items.Add()
將行添加到它們。添加項到dataGrid,datagrid.item.add混淆
我知道它需要一個對象,但它如何確定要採取的對象中的哪個值?僅僅爲了將新行放入dataGrid而創建一個泛型類感覺混亂,是否有另一種方法來實現這一點?
所以下面我有一個通用對象,我該如何使.Add
將名稱和年齡添加到dataGrid1中?
泛型類:
namespace myApp
{
public class generic
{
private string name;
private int age;
public generic(string n, int a)
{
name = n;
age = a;
}
public string getName()
{
return name;
}
public int getAge()
{
return age;
}
}
}
我試過dataGrid1.Items.Add(new Item("Ann", 21))
; //顯示一排空單元格。我只是不能換我的頭周圍這是如何工作
更多信息編輯:
在我的.xaml
<DataGrid x:Name="dataGrid1" VerticalAlignment="Top" />
在我的CS文件:
DataGridTextColumn nameColumn = new DataGridTextColumn();
DataGridTextColumn ageColumn = new DataGridTextColumn();
nameColumn.Header = "name";
nameColumn.Binding = new Binding("name");
dataGrid1.Columns.Add(nameColumn);
ageColumn.Header = "age";
ageColumn.Binding = new Binding("age");
dataGrid1.Columns.Add(ageColumn);
然後我有一個點擊功能,每當點擊會產生一個新的名字和年齡,然後將它添加到dataGrid1
如果DataGrid中的所有項目都是相同的類型,並且AutoGenerateColumns已打開,它將根據其具有'getter'的公共屬性生成列:public String Name {get;保護組;例如''。與年齡相同。那麼,如果你可以分享你的DataGrid的XAML,那麼我們可以看到你是如何定義行的。 –
您應該使用屬於viewmodel的ObservableCollection填充DataGrid,而不是在後面的代碼中編寫所有這些東西,但我們可以一次完成這一步。 –
我編輯了我的帖子以獲取更多信息。它更有意義嗎?謝謝。 我有一些麻煩理解'用observablecollection填充datagrid屬於viewmodel'。 – user308553