我想将我的DataTable返回数据添加到我的DataGridTemplateColumn.CellEditingTemplate组合框中,但组合框为空
我的xaml代码如下
<DataGridTemplateColumn Header="Student">
<DataGridTemplateColumn.CellEditingTemplate >
<DataTemplate>
<ComboBox ItemsSource="{Binding dtStudent}" DisplayMemberPath="StudentName"/>
</DataTemplate>
</DataGridTemplateColumn.CellEditingTemplate>
</DataGridTemplateColumn>
后端
dtStudent = new Function().Sel_Student(); //Function that return student detail
我试图为组合框控件添加一个Name,但无法从后端访问它。
我的绑定方法错了吗?或者我有其他方法来实现我需要的
在DataTemplate中定义控件时,无法通过其名称访问控件。您可以从其可视化树中获取组合框。请参阅此WPF如何从DataTemplate 访问控制
您需要绑定到属性而不是函数。所以在你的后端你应该有
public IEnumerable<Student> Students
{
get
{
return Sel_Students();
}
}
private IEnumerable<Student> Sel_Students()
{
return { ... your students};
}
public class Student {
}