Datagridview Combobox列不显示选择的组合框值

时间:2013-11-23 08:03:16

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

我正在使用普通的Datagridview,但我遇到了问题 这样我就可以在网格中填充数据并向其添加组合框列

db.DataEntities ss = new db.DataEntities();
DataGridview1.DataSource = ss.table1.ToList();

if (!DataGridview1.Columns.Contains("dgcolUser"))
{
    DataGridViewComboBoxColumn dgcombocolUser = new DataGridViewComboBoxColumn();
    dgcombocolUser.Name = "dgcolUser";

    var listOfAllUsers = ss.secAccountInformations.ToList();
    dgcombocolUser.DataSource = listOfAllUsers;
    dgcombocolUser.DisplayMember = "AccountName";
    dgcombocolUser.ValueMember = "UserId";
    DataGridview1.Columns.Add(dgcombocolUser);
}

foreach ( DataGridViewRow dgr in DataGridview1.Rows)
{
    dgr.Cells["dgcolUser"].Value = dgr.Cells["PermittedUserId"].Value;
}

我在MDI家长中打开此表格

Form1 frm = new Form1() { MdiParent = MdiForm1};
frm.Show();

当我打开表单时,它不会在Comboboxcolumn中显示任何选定的值 但是,当我打开我的Form frm1而不是MdiParent时,它会在Comboboxcolumn中显示所选值

Form1 frm = new Form1();
frm.Show();

所以这真的发生了,因为它在我没有MdiParnet显示我的表格时显示数据,或者是否有任何其他原因因为它没有发生 请给我更好的建议..因为没有MdiParent的显示形式是无效的解决方案。

1 个答案:

答案 0 :(得分:0)

我遇到了同样的问题。我相信你正在填写表格Load事件上的DGV。如果您将该代码移动到Form Activated Event,那么这应该在MDI表单中