Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# DataGridViewComboxColumn在绑定列上设置元素集合,但不';不允许用户下拉_C#_Datagridviewcomboboxcell - Fatal编程技术网

C# DataGridViewComboxColumn在绑定列上设置元素集合,但不';不允许用户下拉

C# DataGridViewComboxColumn在绑定列上设置元素集合,但不';不允许用户下拉,c#,datagridviewcomboboxcell,C#,Datagridviewcomboboxcell,我只需要在DataGridView中的7列中设置一个标准的星期几组合框下拉列表,以便我的用户选择星期几,我的初始解决方案是编辑DataGridView的列并将ColumnType设置为DataGridViewComboxColumn,然后手动将星期几项添加到集合中 然后我运行它,绑定的数据自动选择正确的日期并显示在单元格中,单击单元格什么也不做。然后我研究了一下,有人说你需要将ReadOnly从true改为false,当我尝试在“编辑列”对话框中使用它并保存“OK!!”时,我想。。。微软有它自己

我只需要在DataGridView中的7列中设置一个标准的星期几组合框下拉列表,以便我的用户选择星期几,我的初始解决方案是编辑DataGridView的列并将ColumnType设置为DataGridViewComboxColumn,然后手动将星期几项添加到集合中

然后我运行它,绑定的数据自动选择正确的日期并显示在单元格中,单击单元格什么也不做。然后我研究了一下,有人说你需要将ReadOnly从true改为false,当我尝试在“编辑列”对话框中使用它并保存“OK!!”时,我想。。。微软有它自己的东西,我不需要为这个难以置信的简单的东西编写代码,但是在运行这个之后,在我的网格中单击下拉列表仍然没有任何作用,然后在我返回并检查我的只读属性后,才发现它被重置为真

我有七列接受星期几数据。我需要创建一个包含星期几的数据源,然后绑定每个组合框吗?似乎是一项容易的任务,却变得异常困难


请提供任何帮助

是否要在每个输入上查找新行?您可能希望使用Design pages属性,而不是对其进行编码。我不太明白你在找什么。这也是Winforms吗

    private void Form1_Load(object sender, EventArgs e)
    {
        for(int i = 0; i < 7; i++)
        {
            dataGridView1.Columns.Add(CreateComboBoxDayColumn((i + 1).ToString()));
        }
    }

    private DataGridViewComboBoxColumn CreateComboBoxDayColumn(string headerText) => 
        new DataGridViewComboBoxColumn
        {
            HeaderText = headerText,
            DropDownWidth = 160,
            Width = 90,
            MaxDropDownItems = 7,
            FlatStyle = FlatStyle.Flat,
            Items =
            {
                "Sunday",
                "Monday",
                "Tuesday",
                "Wednesday",
                "Thursday",
                "Friday",
                "Saturday",
            }
        };
private void Form1\u加载(对象发送方,事件参数e)
{
对于(int i=0;i<7;i++)
{
dataGridView1.Columns.Add(createComboxDayColumn((i+1.ToString());
}
}
私有DataGridViewComboBoxColumn CreateComboxDayColumn(字符串头文本)=>
新的DataGridViewComboxColumn
{
HeaderText=HeaderText,
下拉宽度=160,
宽度=90,
MaxDropDownItems=7,
FlatStyle=FlatStyle.扁平,
项目=
{
“星期日”,
“星期一”,
“星期二”,
“星期三”,
“星期四”,
“星期五”,
“星期六”,
}
};

是否在每个输入上查找新行?您可能希望使用Design pages属性,而不是对其进行编码。我不太明白你在找什么。这也是Winforms吗

    private void Form1_Load(object sender, EventArgs e)
    {
        for(int i = 0; i < 7; i++)
        {
            dataGridView1.Columns.Add(CreateComboBoxDayColumn((i + 1).ToString()));
        }
    }

    private DataGridViewComboBoxColumn CreateComboBoxDayColumn(string headerText) => 
        new DataGridViewComboBoxColumn
        {
            HeaderText = headerText,
            DropDownWidth = 160,
            Width = 90,
            MaxDropDownItems = 7,
            FlatStyle = FlatStyle.Flat,
            Items =
            {
                "Sunday",
                "Monday",
                "Tuesday",
                "Wednesday",
                "Thursday",
                "Friday",
                "Saturday",
            }
        };
private void Form1\u加载(对象发送方,事件参数e)
{
对于(int i=0;i<7;i++)
{
dataGridView1.Columns.Add(createComboxDayColumn((i+1.ToString());
}
}
私有DataGridViewComboBoxColumn CreateComboxDayColumn(字符串头文本)=>
新的DataGridViewComboxColumn
{
HeaderText=HeaderText,
下拉宽度=160,
宽度=90,
MaxDropDownItems=7,
FlatStyle=FlatStyle.扁平,
项目=
{
“星期日”,
“星期一”,
“星期二”,
“星期三”,
“星期四”,
“星期五”,
“星期六”,
}
};