繁体   English   中英

DataGridColumn更改为ComboBox

[英]DataGridColumn Change to ComboBox

我列出了要用作DataGridview数据源的usrdetails 两个问题:

  1. 如何将DataGridview第三列的列类型从DataGridTextBoxColumn更改为DataGridComboBoxColumn

  2. 将第3列更改为ComboBox如何使用字符串列表填充?


public class usrInfo
{
    public string userID { get; set; }
    public string username { get; set; }
    public string group { get; set; }
    public string seclev { get; set; }
    public string isext { get; set; }

    public usrInfo(string userID, string username, string group, string seclev, string isext)
    {
        this.userID = userID;
        this.username = username;
        this.group = group;
        this.seclev = seclev;
        this.isext = isext;
    }
}

public static List<usrInfo> usrdetails = new List<usrInfo>();

private void Form5_Load(object sender, EventArgs e)
{
    var comboColumn = new DataGridViewComboBoxColumn();


        dataGridView1.DataSource = null;
        dataGridView1.DataSource = usrdetails;
        for (int i = 0; i < secgrps.Count; i++)
          groups.Add(secgrps[i].ToString());
        comboColumn.Name ="Security Group";
        comboColumn.DataSource = groups;
        dataGridView1.Columns.Insert(2, comboColumn);
        usrdetails.Add(new usrInfo("domain\\userID", "User Name", "RIGSITE ONLY Wellsite Leader", "7", "Y"));
        dataGridView1.Refresh();
        if (usrdetails.Count > -1)
            num_users = true;
 }

您需要将DataGridViewComboBoxColumn添加到dataGridView1控件,并将其DataSource属性分配给所需的字符串集合。

var myStringCollection = new[] {"String1", "String2", "String3"};

var comboColumn = new DataGridViewComboBoxColumn();
comboColumn.Name = "MyComboColumn";
comboColumn.DataSource = myStringCollection; //This sets the source of drop down items

然后将其插入到网格中:

if (dataGridView1.Columns["MyComboColumn"] == null)
{
    //The int value as first parameter of Insert() is the desired Column Index
    dataGridView1.Columns.Insert(0, comboColumn);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM