c# - 如何在datagridview组合框列中绑定(bind)数据

标签 c# windows datagridviewcombobox

这是联系人,但我们可以有多个联系人,所以我想在组合框中显示一个列表

DataTable dt = new DataTable();
dt = MainClass.GetDatabyQuery("select * from tbl");

if (dt.Rows.Count > 0)
{
    dgv_ClientDetail.DataSource = dt;
}

我有这种方法可以从 datagridview 中的数据库中获取值,但我想要一个 datagridview 组合框列,并且想在一个 dgv 组合框和另一个 dgv texbox 中绑定(bind)数据。如果有人知道然后告诉我。这里有三列名称、城市、联系人。我想在 dgv 组合框列中显示多个联系人

最佳答案

只需在 dt 中选择 NameCity,这样您就可以执行如下操作,

        dgv_ClientDetail.DataSource = dt;
        DataGridViewComboBoxColumn dgvCboColumn = new DataGridViewComboBoxColumn();
        dgvCboColumn.Name = "Contacts";
        dgvCboColumn.DataSource = dtContacts; //DataTable that contains contact details
        dgvCboColumn.DisplayMember = "Name";
        dgvCboColumn.ValueMember = "Id";
        dataGridView1.Columns.Add(dgvCboColumn);

编辑:

        dgv_ClientDetail.DataSource = new DataView(dt)
                                         .ToTable(true, new string[] { "Name", "City" });
        DataGridViewComboBoxColumn dgvCboColumn = new DataGridViewComboBoxColumn();
        dgvCboColumn.Name = "Contacts";
        dgv_ClientDetail.Columns.Add(dgvCboColumn);
        foreach (DataGridViewRow row in dgv_ClientDetail.Rows)
        {
            DataGridViewComboBoxCell cboContacts = (DataGridViewComboBoxCell)
                                                         (row.Cells["Contacts"]);
            cboContacts.DataSource = //Get the contact details of a person,
                                     //using his Name or Id field (row.Cells["Name"]);
            cboContacts.DisplayMember = "Name"; //Name column of contact datasource
            cboContacts.ValueMember = "Id";//Value column of contact datasource
        }

希望这有助于...

关于c# - 如何在datagridview组合框列中绑定(bind)数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30795816/

相关文章:

c# - ServiceStack RequiredPermission 未验证我的用户

c# - c#中的锁定机制

c - 在 c 中获取进程 Cpu 使用情况

c# - 如何在不使用对象的情况下检查 DataGridViewComboBoxColumn 中的项目?

c# - DataGridViewComboBoxCell 绑定(bind) - "value is not valid"

c# - 如何将数据库中的数据公开以供查询?

c# - 使用 C# 为 Windows 设置 ipv6

windows - Windows Dll 可以在 Windows Phone 上运行吗?

windows - 网络中断时打印到本地共享打印机

c# - 如何在 DataGridView 中制作 ComboBox 列?