首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >DataGridColumn改为ComboBox

DataGridColumn改为ComboBox
EN

Stack Overflow用户
提问于 2014-02-05 23:21:47
回答 1查看 455关注 0票数 0

我有list usrdetails,我正在使用它作为DataGridview的数据源。两个问题:

  1. 如何将DataGridview中第三列的列类型从DataGridTextBoxColumn更改为DataGridComboBoxColumn
  2. 一旦我将第三列更改为ComboBox,我将如何填充字符串列表?

代码语言:javascript
复制
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;
 }
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-02-05 23:50:49

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

代码语言:javascript
复制
var myStringCollection = new[] {"String1", "String2", "String3"};

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

然后将其插入网格中:

代码语言:javascript
复制
if (dataGridView1.Columns["MyComboColumn"] == null)
{
    //The int value as first parameter of Insert() is the desired Column Index
    dataGridView1.Columns.Insert(0, comboColumn);
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21590782

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档