【发布时间】:2014-02-07 19:12:54
【问题描述】:
是否可以获取枚举列表项的值?我创建了一个枚举列表,其中每个项目都与一个字节值相关联。
public enum Items : byte
{
Item1 = 0x00,
Item2 = 0x01,
Item3 = 0x02 ....
}
我的列表框填充了这些项目,我正在寻找一种方法来写入关联的字节值(如果被选中)。是否有类似于以下示例的内容可以用于此类任务?
if(listbox.SelectedItem = Item1 .. 2 .. 3)
{
// Write byte value of Item1 .. 2 .. 3 via serial port
}
【问题讨论】:
-
只需将所选项目转换为
byte:port.Write((byte)listbox.SelectedItem);(请注意,如果ListBox中的项目是枚举成员,则此方法有效)。 -
谢谢丹尼斯 ...我尝试使用这种方法,但我收到一条错误消息,指出“无法从 'byte' 转换为 'string'。所以我尝试了:port.Write(((byte)listbox. SelectedItem).ToString()) 但随后我收到“指定的演员表无效”消息。
-
@Nevets Dennis 有正确的想法,我已经在我的回答中详细说明了。
标签: c# enums serial-port