我正在为某种命令使用的参数类编写代码。该命令有两个主要问题:
- OptionalValues - 这是要选择的可选值。
- SelectedValue - 用户选择。
用户输入是:从枚举中选择一个成员。
编码:
public enum eUserChoice
{
Choice1,
Choice2,
Choice3
};
public class Parameter<ENUM_TYPE>
{
public ENUM_TYPE OptionalValues {get;} // WRONG USING
public ENUM_TYPE Value {get; set;}
}
代码的请求行为:
Parameter<eUserChoice> myParam = new Parameter<eUserChoice>()
myParam.Value = myParam.OptionalValues.Choice1;
// OR:
// myParam.Value = myParam.OptionalValues.Choice1 | myParam.OptionalValues.Choice2;
当我写“myParam.OptionalValues”时。我希望这等于写“eUserChoice”。(智能感知很重要)。
我不确定这是否可能......你怎么看?