【问题标题】:winforms datagrid change column to combobox on editwinforms datagrid 在编辑时将列更改为组合框
【发布时间】:2012-04-26 22:13:03
【问题描述】:

我的 winforms 应用程序上有一个数据网格列。当用户选择一个特定的单元格时,该单元格应该变成数据绑定的组合框,并且用户可以编辑该单元格。

如何在编辑模式下显示组合框?

【问题讨论】:

    标签: winforms datagrid combobox


    【解决方案1】:
    • 为了将单元格转换为组合框:

    this.yourdatagridname.Rows[x].Cells[y] = new DataGridComboBoxCell();

    其中 x,y 表示要转换的单元格

    • 为了使其可编辑:

    this.yourdatagridname.Rows[x].Cells[y].ReadOnly = false;

    【讨论】:

      【解决方案2】:

      EditingControlShowing 事件中有什么?

      void dataGridView1_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)
      {
       BindingSource bindingSource = this.dataGridView1.DataSource as BindingSource;
       Person person = bindingSource.Current as Person;
       BindingList<personType> bindingList = this.FindPersonTypes(person);
      
       DataGridViewComboBoxEditingControl comboBox = e.Control as DataGridViewComboBoxEditingControl;
       comboBox.DataSource = bindingList;
      }
      

      参考:http://www.timvw.be/2007/01/17/exploring-datagridviewcomboboxcolumn-databinding/

      【讨论】:

        猜你喜欢
        • 2012-11-30
        • 2013-11-03
        • 1970-01-01
        • 1970-01-01
        • 2018-04-03
        • 2011-04-14
        • 2017-07-14
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多