在绑定列上设置元素集合的 DataGridViewComboBoxColumn 不允许用户下拉



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

然后我运行它,绑定的数据自动选择正确的日期并将其显示在单元格中,单击单元格没有任何作用。然后我研究了一下,有人说你需要将 ReadOnly 从 true 更改为 false,当我尝试它在"编辑列"对话框中工作并保存时,"OK!!!我以为。。。Microsoft 有它的东西在一起,我不需要为这个非常简单的事情编写代码,但是在运行它之后,单击我的网格中的下拉列表仍然什么也没做,然后在我返回并检查我的 ReadOnly 属性后,发现它已被重置回 True。

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

请提供任何帮助

您是否在每个输入上寻找新行?您可能希望使用"设计页"属性,而不是对其进行编码。我无法清楚地理解你在找什么。这也是温斯吗?

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",
}
};

相关内容

  • 没有找到相关文章

最新更新