我正在爲我自己編寫的一本食譜,用WPF/C#編寫。 另外我是新來的數據綁定。代碼中的Datagrids上的綁定背後的
我的問題是,我想在代碼後面的運行時在TabItem中生成一個Datagrid,包括綁定。我無法在XAML中設置Datagrid,因爲我想動態創建所有TabItem。
下面的代碼至今:
XAML:
<UniformGrid Columns="2" Rows="1">
<TabControl Name="TabControl" TabStripPlacement="Left"/>
<TabItem Header= "first dish" Name = "firstdish"/>
</UniformGrid>
XAML.cs的一代:
//New Grid
var Grid = new DataGrid();
//Start Test list creation with three items
var TestList = new List<Receipt>();
//Set binding
Grid.ItemsSource = TestList;
var Rec = new Receipt();
Rec.Creator = "DaJohn1";
Rec.ID = 1;
Rec.Title = "TestReceipt1";
var Rec2 = new Receipt();
Rec2.Creator = "DaJohn2";
Rec2.ID = 2;
Rec2.Title = "TestReceipt2";
var Rec3 = new Receipt();
Rec3.Creator = "DaJohn3";
Rec3.ID = 3;
Rec3.Title = "TestReceipt3";
TestList.Add(Rec);
TestList.Add(Rec2);
TestList.Add(Rec3);
//End Test list creation
//Add Column
var SingleColumn = new DataGridTextColumn();
Grid.Columns.Add(SingleColumn);
SingleColumn.Binding = new Binding("Creator");
SingleColumn.Header = "Creator";
//Add Column
var SingleColumn2 = new DataGridTextColumn();
Grid.Columns.Add(SingleColumn2);
SingleColumn2.Binding = new Binding("Title");
SingleColumn2.Header = "Title";
//Set tabitem content to datagrid
firstdish.Content = Grid;
所有我得到的是四排的數據網格(看起來像項目數量正確),這些都是空的,沒有數據可見。 自從上個星期一以來,我一直在盯着這個,並且無法在任何地方找到答案。
感謝您的任何想法和解決方案。
Receipt類中的Creator變量是否爲public?爲了讓UI訪問它,它需要如下所示: public string Creator {get; set;} – Foxman