我正在尝试构建一个应用程序,它将在同一个XamDataGrid中为不同的项目显示不同的列。这是一个例子:
public class Project
{
public ICollection<Person> People { get; private set; }
public string DisplaySpec { get; private set; }
}
public class Person{
{
public Name Name { get; set; }
}
public class Name
{
... a bunch of dynamic properties that vary by project...
}
我可以动态查找每个Name的属性,没有问题,如果我编写Xaml并在实际可执行文件中编译它,我可以显示它们。但是每个项目都有一个不同的字段列表要绑定,我希望它们能够注入要显示的字段名称。
有没有简单的方法可以让他们指定他们想要使用的字段的名称?
答案 0 :(得分:0)
字段本身无法绑定。您最好的选择是要么自动生成字段,要么在代码中有一个方法可以动态添加所需的字段。如果您希望有一个可以在XAML中使用绑定的解决方案,您可以将逻辑添加到网格上的behavior中,该网格会公开您可以将列表绑定到的属性。
要自动生成字段,您需要将FieldLayoutSettings上的AutoGenerateFields设置为True。