【问题标题】:Accept Input from user through datagridviewcomboboxcolumn通过 datagridviewcomboboxcolumn 接受用户的输入
【发布时间】:2016-12-20 08:28:19
【问题描述】:

我有一个 DataGridViewdatagridviewcomboboxcolumn,我希望用户从 datagridviewcomboboxcolumn 中选择一个项目并可以选择自己编写,输入字段也应该如果此Dropdown中不存在此项,则为Combobox,写入的选项将仅插入数据库中,而不是作为下拉列表中的另一个选项添加。

【问题讨论】:

  • 不清楚你想要达到什么。书面选择应该永远不可见,还是应该在重新启动程序时可见?您究竟想在哪里输入新项目?
  • 输入应该是组合框
  • ComboBox 应该用作下拉菜单和文本字段

标签: c# vb.net winforms datagridview windows-forms-designer


【解决方案1】:

要在 datagridview 中创建一个组合框类型的列,您可以使用以下代码:

  1. 在datagridview中添加列

    using System.Data.SqlServerCe;
    
    string sqlConnection = "Data Source";
    SqlCeConnection conn = new SqlCeConnection(sqlConnection);
    //Get bind from database.
    string qryGetCategory = "Query to get data for combo box";
    SqlCeCommand cmdCat = new SqlCeCommand(qryGetCategory, conn);
    SqlCeDataAdapter daCat = new SqlCeDataAdapter(qryGetCategory, conn);
    DataTable dtCat = new DataTable();
    daCat.Fill(dtCat);
    
    //Combobox column.
    DataGridViewComboBoxColumn ComboBoxCol = new DataGridViewComboBoxColumn();
    ComboBoxCol.DataSource = dtCat;
    ComboBoxCol.Name = "Column name";
    ComboBoxCol.ValueMember = "Value of member";
    ComboBoxCol.DisplayMember = "Member to be show";
    ComboBoxCol.DropDownStyle = ComboBoxStyle.DropDown;
    datagridview.Columns.Add(ComboBoxCol);
    

【讨论】:

  • @M.Aj 如果您觉得答案有用,请将其标记为答案,这样它也会对其他人有所帮助。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-12-28
相关资源
最近更新 更多