在我的项目中,有一个包含组合框的UI,组合框将列出一些通信协议,如TCP / IP,FTP等
我想使用枚举来呈现通信协议,可能是这样的:
public enum CommuProtocol
{
TCPIP = 0,
FTP,
MPI,
Other
}
那么,如何将枚举值绑定到组合框中的文本。例如,从组合框中选择的文本中我可以很容易地知道相应的枚举值,反之亦然。我希望将来很容易扩展。
文本可能与枚举值等不同,TCP / IP与TCPIP ...
谢谢!
答案 0 :(得分:4)
好吧,要么创建一个将值转换为字符串的函数,要么ToString值:
CommuProtocol prot = CommuProtocol.FTP;
string name = prot.ToString();
您可以使用枚举成员的名称来获取parse member of Enum的正确值:
CommuProtocol prot = System.Enum.Parse(CommuProtocol, "FTP");
但是,由于成员的名称可能不适合显示,因此您最终可能会创建一个翻译名称的方法。
答案 1 :(得分:2)
答案 2 :(得分:2)
这被问了很多。请参阅答案here。