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