单元格值文本不显示

本文关键字:显示 文本 单元格 | 更新日期: 2023-09-27 18:21:10

我使用的是VS 2012 Windows窗体数据网格视图控件。网格的数据源是一个JObject,但我有一个预定义的列,它应该显示来自其中一个数据源单元格的数据,该单元格也是JObject。将数据源分配给网格后,我循环遍历行并添加新值。但它并不完全正确。

for (int i = 0; i < dgv.RowCount; i++)
{
    JObject account = JsonConvert.DeserializeObject<JObject>(dgv.Rows[i].Cells["incomeAccount"].Value.ToString());
    dgv.Rows[i].Cells["account"].Value = account["accountName"];
}

这个控制台输出实际上显示了正确的文本,例如"John Smith"。然而,当网格加载完成时,该colunm中的单元格都是空白的。datagridview列不是只读的。我还需要做些什么来显示新数据吗?

单元格值文本不显示

DataGridView喜欢数据绑定。创建一个具有要查看的属性的对象数组,然后将该数组设置为DataGridView.DataSource属性。http://msdn.microsoft.com/en-us/library/system.windows.forms.datagridview.datasource(v=vs.110).aspx

网格必须是活动控件,以便在数据绑定后更新单元格值。在for循环之前调用dgv.focus()解决了我的问题。