【问题标题】:WinForms DataGridView does not add columns on setting DataSourceWinForms DataGridView 不会在设置 DataSource 时添加列
【发布时间】:2015-06-10 16:21:49
【问题描述】:

我有一个名为dgvInspectionsHistoryDataGridView

下面这行代码第一次运行后,dgvInspectionsHistory增加了5列

this.ClearTable(this.dgvTemplatesConfiguration);

this.dgvTemplatesConfiguration.DataSource = templatesData;

this.dgvTemplatesConfiguration.ReadOnly = false;

//3 columns added

this.dgvTemplatesConfiguration.Columns.Add(this.CreateFaultsColumn(faultsData, "OuterFaults", 2));
this.dgvTemplatesConfiguration.Columns.Add(this.CreateFaultsColumn(faultsData, "InnerFaults", 5));

//2 more columns added

for (int i = 0; i <= dgvTemplatesConfiguration.Rows.Count - 1; i++)
{
     dgvTemplatesConfiguration["InnerFaults", i].Value = OkFaultName;
}

但是在此代码第二次运行并且确实删除了一些列之后,dgvInspectionsHistory 没有被重新填充:

this.ClearTable(this.dgvInspectionsHistory);
this.dgvInspectionsHistory.DataSource = inspectionsData;

//the desired 3 colums are not getting added

为什么会这样,我怎样才能达到预期的效果?

【问题讨论】:

  • 在第一个代码示例中,您使用dgvTemplatesConfiguration 而不是dgvInspectionsHistory
  • 我怀疑在第一个代码示例中是否将任何列添加到 dgvInspectionsHistory,因为在该代码中根本没有引用 dgvInspectionsHistory。您在该代码中使用了另一个 datagridview。你确定你在你的问题中输入了正确的代码吗?

标签: winforms datagridview


【解决方案1】:

因为您正在使用两个不同的数据网格,即 dgvTemplatesConfiguration 和 dgvInspectionsHistory,所以没有任何参考请尝试在第二个代码中将 dgvInspectionsHistory 重命名为 dgvTemplatesConfiguration 并检查它是否有效

【讨论】:

    猜你喜欢
    • 2013-12-24
    • 2018-10-03
    • 1970-01-01
    • 1970-01-01
    • 2015-02-12
    • 1970-01-01
    • 2013-03-28
    • 1970-01-01
    • 2011-12-18
    相关资源
    最近更新 更多