【发布时间】:2017-12-05 10:35:08
【问题描述】:
我有一个DataGridView,它设计了两列:它们的DataPropertyName 是Name 和Value。
DataSource 这个DGV 来自SomeObject 类的集合,看起来像:
public class SomeObject
{
public string Name { get; set; }
public int Value { get; set; }
public int SomeOtherProp1 { get; set; }
public int SomeOtherProp2 { get; set; }
}
我只想在DataSource 中使用Name 和Value 属性,所以我用这两个属性创建了一个匿名对象(someObjectCollection 是SomeObject objects 的集合):
dgv.DataSource = someObjectCollection.Select(o => new { o.Name, o.Value }).ToArray();
没关系 - 我现在需要实现的是手动将一个空集合分配给 dgv.DataSource 以将其清除。
我无法分配null,因为这样DataGridView 控件就会消失在窗体上。
我也将省略创建一个额外的 viev 模型类,只使用 DataSource 中使用的这两个属性。
那么,还有其他方法吗?
【问题讨论】:
-
我打算建议使用另一个模型作为数据源,然后用您的选择填充它。然后我注意到了你的最后一句话。我可能会建议尝试修复您令人沮丧的
dgv然后将data source设为空或将其设置为空白object然后清除行? -
网格不应消失。你有一个最小的例子吗?
标签: c# winforms datagridview