我正在开发一个基于MVVM的WPF应用程序。我想将一个字符串列表绑定到列标题,例如,如果该列表包含"abc"、"xyz"和"pqr",则我的DataGrid
应有三列分别为abc、xyz和pqr作为列头。这是我要绑定到数据网格的类。行被存储在ObservableCollection<List<string>>
中,其中ObservableCollection
的每个元素都是由字符串列表组成的单元格形式。
public class Resource
{
private ObservableCollection<string> columns;
public ObservableCollection<string> Columns
{
get
{
return columns;
}
set
{
columns = value;
}
}
private ObservableCollection<List<string>> row;
public ObservableCollection<List<string>> Row
{
get
{
return row;
}
set
{
row = value;
}
}
public Resource()
{
List<string> a = new List<string>();
a.Add("1");
a.Add("2");
List<string> b = new List<string>();
b.Add("11");
b.Add("21");
Row = new ObservableCollection<List<string>>();
Row.Add(a);
Row.Add(b);
Columns = new ObservableCollection<string>();
Columns.Add("Hello");
Columns.Add("World");
}
}
我在网上搜索了很多,但是找不到任何带有工作示例的内容。我真的需要仅使用这种方法绑定 DataGrid
。
DataTemplate
,而不是尝试使用“一刀切”的解决方案,这种方案只适用于非常基本的仅包含字符串的数据类型。 - Federico Berasategui