我试图在label.text中获取datagridview中每列的不同值,但它没有用,任何人都可以帮助我。
例如:
hair | age |friendly
red |old | yes
black|young| no
black|old | maybe
结果应该显示在label.text中,如下所示:hair:red,black;年龄:年老,年轻;友善:是的,不,也许。
提前感谢您的所有时间。此致
答案 0 :(得分:0)
如果我理解正确,这是一个方法(其中dt是你的数据表):
Dictionary<string, List<string>> distinct = new Dictionary<string, List<string>>();
foreach (DataColumn col in dt.Columns)
{
distinct.Add(col.ColumnName, new List<string>());
DataTable uniqueCols = dt.DefaultView.ToTable(true, col.ColumnName);
distinct[col.ColumnName]
.AddRange(uniqueCols.AsEnumerable().SelectMany(x => x.ItemArray).Cast<string>());
}
StringBuilder b = new StringBuilder();
foreach (KeyValuePair<string, List<string>> pair in distinct)
{
b.Append(pair.Key + ": ");
foreach (var item in pair.Value)
{
b.Append(item + " ");
}
}
label1.Text = b.ToString();