我想将每列放入单独的数组中。这样我以后可以从组合框中选择类别并显示值。但我不知道如何做到这一点,我甚至不知道数组是否是一个好主意。提前谢谢。
Category1 Category2 Category3
---------- ------------ ------------
13 1 12
12 1 13
12 5 14
44 3 15
23 6 16
我尝试过这样的事情:
if(char.IsNumber(s.Trim().ToCharArray().ElementAt(0)))
{
double[,] p = new double[samples, columns];
for(int i=0;i<samples;i++)
{
for(int j=0;j<columns;j++)
{
//p[i,j]=
}
}
}
答案 0 :(得分:1)
我这样做的方法是首先创建一个类:
var categories = new List<Category> {
new Category { Category1 = 13, Category2 = 1, Category3 = 12 },
new Category { Category1 = 12, Category2 = 1, Category3 = 13 }
};
然后创建一个列表并填充它:
{{1}}
答案 1 :(得分:1)
我只是使用列表(除非元素的数量保持不变并且已知) 你还没有提到你从哪里读这个列表。 如果它只是一个文件将其转换为某种类型的xml并解析它或只是解析文本文件。如果是db,则使用ORM将以下类映射到db对象,或者只是手动读取它们。
对于您的组合框
创建一个类并将数据解析为此类对象
class Category
{
public string CategoryName {get; set;}
public List<int> CategoryItems {get; set}
}
你的xaml中的组合框有这样的东西
<ComboBox ItemSource="{Binding Categories}"
DisplayMemberPath="{Binding CategoryName}"
SelectedItem="{Binding SelectedCategoryIndex}"/>
<ComboBox ItemSource="{Binding CategoryItems}"/>
在你的viewmodel中,这就是你如何拥有它
public int SelectedCategoryIndex {get; set;}
public List<Category> Categories {get; private set;}
public List<int> CategoryItems
{
get
{
return this.Categories[SelectedCategoryIndex].CategoryItems;
}
}
希望这有帮助