单击组合框值时 DataGridView 列标题更改

Posted

技术标签:

【中文标题】单击组合框值时 DataGridView 列标题更改【英文标题】:DataGridView Column Header change when combobox value is clicked 【发布时间】:2016-11-17 04:11:10 【问题描述】:

我在 Windows 窗体应用程序中创建 DataGridViewcombobox 时遇到问题。在单击combobox 值时,我需要帮助编写带有条件的代码,datagridview 列标题将根据选定的combobox 值进行调整。这是我想要的应用程序的示例图片:

wages is selected时的datagridview示例

sales is selected时的datagridview示例

感谢您的时间和帮助:D

【问题讨论】:

您是否有多个 DataTableList 对象要基于 ComboBoxSelectedItemDataGridView 中显示? 【参考方案1】:
if (comboBox1.SelectedItem == "Wages")

    dataGridView1.ColumnCount = 3;
    dataGridView1.Columns[0].Name = "StoreLoc";
    dataGridView1.Columns[1].Name = "Month";
    dataGridView1.Columns[2].Name = "Value";

else if (comboBox1.SelectedItem == "Sales")

    dataGridView1.ColumnCount = 3;
    dataGridView1.Columns[0].Name = "StoreName";
    dataGridView1.Columns[1].Name = "StoreType";
    dataGridView1.Columns[2].Name = "Value";

【讨论】:

【参考方案2】:

可以更改所有属性(如列标题等)。我在自己构建的应用程序中使用了它,但如果我再做一次,我会创建两个单独的网格视图,并根据组合框的选择使其中一个可见。

类似(伪代码):

void ComboBoxedValueChanged(...)

   gridViewWages.IsVisible = (comboBoxValue == wages);
   gridViewSales.IsVisible = (comboBoxValue == sales);
 

【讨论】:

您的解决方案也有效,但在我的情况下,我只需要一个网格视图。谢谢:)

以上是关于单击组合框值时 DataGridView 列标题更改的主要内容,如果未能解决你的问题,请参考以下文章

Datagridview_2 组合框值在 C# 中无效

Datagridview组合框未在单击/编辑时选择

在访问中更改组合框值时,可以更改/重新计算计算的文本框值

组合框单元格值数据源datagridview

将按钮列添加到 DataGridView 并将条件文本仅应用于单击的按钮

访问 2000 组合框 oldvalue 属性