我是c#的新人 我有一个GridView + BindingSource 我用这样的项目列表填充我的绑定源:
public class ListItem
{
public DbObject EntityObject { get; set; }
public bool Used
{
get
{
return EntityObject != null;
}
}
public int Id
{
get
{
return EntityObject == null ? 0 : EntityObject.Id;
}
}
public string Name{
get
{
return EntityObject == null ? "<no name>" : EntityObject.ToString();
}
}
}
数据在Grid中显示为罚款。但我无法检查或取消选中Grid中的复选框。当我没有填写字段Used
时:
public bool Used
{
get; set;
}
网格再次变得可编辑。 什么不能错在这里?
更新
现在我的网格可编辑但工作不正确 我有4个原料,2个原料被检查:
1 unchecked
2 unchecked
3 checked
4 checked
现在我取消选中原始3:
1 unchecked
2 unchecked
3 unchecked
4 checked
很好。现在取消选中raw 4:
1 unchecked
2 unchecked
3 checked
4 unchecked
现在检查原始2:
1 unchecked
2 checked
3 checked
4 checked
为什么Grid工作如此奇怪?
答案 0 :(得分:1)
目前您只拥有只读属性,如果添加set
,您也可以编辑
private bool temp;
public bool Used
{
get { return temp; }
set { temp= value; }
}