我有一个ObservableCollection" AnswerPossibilities"我可以成功地将ListBox绑定到:
<ListBox ItemsSource="{Binding AnswerPossibilities}" DisplayMemberPath="Text" />
现在,我已经跟着this在运行时向DataGrid添加了列,并且我试图绑定相同的ObservableCollection&#34; AnswerPossibilities&#34;到专栏:
DataGridTextColumn column = new DataGridTextColumn()
{
Header = "Header 1",
Binding = new System.Windows.Data.Binding("AnswerPossibilities")
};
ColumnCollection.Add(column);
网格显示&#34;标题1&#34;,但&#34;答案可能性&#34;缺少,网格是空的。
DataGrid的XAML是
<DataGrid Name="dataGrid"
local:DataGridColumnsBehavior.BindableColumns="{Binding ColumnCollection}"
AutoGenerateColumns="False"/>
我尝试过添加DisplayMemberPath =&#34; Text&#34;到DataGrid,但这并没有改变一件事。经过半天的工作..我非常感谢任何帮助!
答案 0 :(得分:1)
看起来AnswerPossibilities是您将ListBox / DataGrid绑定到的集合。为列创建Binding时,需要在ObservableCollection中指定要绑定到的项的属性。
尝试更改如下:
DataGridTextColumn column = new DataGridTextColumn()
{
Header = "Header 1",
Binding = new System.Windows.Data.Binding("Text")
};
ColumnCollection.Add(column);