2013-08-05 95 views
9

我在將一個List綁定到WPF中的DataGrid時遇到問題。讓我解釋我所嘗試過的。綁定列表到DataGrid

public struct SomeInfo 
{ 
    public string Name; 
    public string Description; 
    public string ID; 
} 

List<SomeInfo> arrSomeInfo; 

arrSomeInfo包含結構SomeInfo的多個項目。

DataGrid看起來類似:

<DataGrid Name="grdMailbag" AutoGenerateColumns="False" ItemsSource="{Binding}"> 
    <DataGrid.Columns> 
     <DataGridTextColumn x:Name="cID" Binding="{Binding ID}" Header="ID" /> 
     <DataGridTextColumn x:Name="cName" Binding="{Binding Name}" Header="Name" /> 
     <DataGridTextColumn x:Name="cDescription" Binding="{Binding Description}" Header="Description" /> 
    </DataGrid.Columns> 
</DataGrid> 

我曾嘗試沒有成功如下:

this.grdMailbag.ItemsSource = arrSomeInfo; //Didn't worked 
this.grdMailbag.DataContext= arrSomeInfo; // Didn't worked 

正在發生的事情是,它增加了行按List arrSomeInfo但所有行空白。

回答

14

更改此:

public struct SomeInfo 
{ 
    public string Name; 
    public string Description; 
    public string ID; 
} 

這樣:

public class SomeInfo 
{ 
    public string Name {get;set;} 
    public string Description {get;set;} 
    public string ID {get;set;} 
} 

WPF不支持綁定到多個領域。只有屬性。並且struct不適用於您試圖表示的數據。

+0

將其更改爲屬性工作..謝謝 – chrismasters