我在将列表绑定到 DataGrid 时遇到问题。
我想要的是有一个展示不同类型的列,例如:
[属性 1] [字符串]
[属性 2] [布尔]
[属性 3] [枚举]
我的实现如下所示:
public interface IPropertyItem
{
}
public class PropertyItem<T> : IPropertyItem
{
public String Name { get; set; }
public T Value { get; set; }
}
我创建一个列表来存储这些属性:
List<IPropertyItem> PropertyList { get; set; }
并绑定到数据网格:
dataGrid.ItemsSource = PropertyList;
现在的问题是第二列中的所有单元格都将不同的数据类型显示为文本。
但我想要的是有一个用于布尔值的复选框,用于枚举的组合框等。
我真的很感激这方面的任何帮助。被这个问题困扰了好几天了。
谢谢!
- 更新 -
添加一个 DataTemplateSelector 解决了这个问题。