gpt4 book ai didi

c# - 从 DataGridView 中的枚举创建下拉列表选项

转载 作者:IT王子 更新时间:2023-10-29 04:53:10 29 4
gpt4 key购买 nike

我目前有一个类,我正在尝试创建一个简单的 GUI 来创建此类的集合。这个类的大部分属性都是字符串。但是,我希望用户能够设置的属性之一是枚举。因此,我希望用户界面具有此枚举的下拉列表,以限制用户输入无效的值。目前,我正在获取对象的初始列表,将它们添加到 DataTable 并将我的 DataGridView 的 DataSource 设置为该表。效果很好,甚至为一个 bool 属性创建了一个复选框列。但是,我不知道如何将枚举列变成下拉列表。我正在使用 C# 和 .NET 2.0。

此外,我已经尝试将 DataGridView 的数据源分配给我的对象列表,但是当我这样做时,它对枚举没有帮助,我无法在 DataGridView 中创建新行,但是我我绝对不必使用 DataTable 作为我的数据源,这只是我半工作的选择。

最佳答案

我不知道这是否适用于 DataGridView 列,但它适用于 ComboBoxes:

comboBox1.DataSource = Enum.GetValues(typeof(MyEnum));

和:

MyEnum value = (MyEnum)comboBox1.SelectedValue;

更新:它也适用于 DataGridView 列,请记住设置值类型。

DataGridViewComboBoxColumn col = new DataGridViewComboBoxColumn();
col.Name = "My Enum Column";
col.DataSource = Enum.GetValues(typeof(MyEnum));
col.ValueType = typeof(MyEnum);
dataGridView1.Columns.Add(col);

关于c# - 从 DataGridView 中的枚举创建下拉列表选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56443/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com