セッター/ゲッター関数からどのようにEnumを返すのですか?現在戻り値Enumから関数C#
私はこれを持っている:
小文字は「タイプ」ですが、
どれを「変数」のように使用されています。私はこれを実行しようとすると
public enum LowerCase
{
a,
b,
}
public enum UpperCase
{
A,
B,
}
public enum Case
{
Upper,
Lower,
}
private Enum _Case;
private Enum _ChosenCase;
public Enum ChooseCase
{
get
{
if ('Condition')
{
return LowerCase; //[need to return LowerCase]
}
else
{
return UpperCase; //[need to return UpperCase]
}
}
set
{
_ChosenCase = value;
}
}
私はエラーを取得します列挙型を返すために何をする必要があるのか?
また、現時点で値を設定しているかどうかもわかりません。
誰かが一般的なアドバイスをいただけたら、私はそれを感謝します。ほとんどの人は私が何をしようとしているのかを見ることができます。
ありがとうございました。
[最新の編集]
まずはお返事いただいたすべての方に感謝します。明確ではないあなたのせい:)
これはコードIである - この質問を簡素化する試みにおいて
、私が大文字/小文字の間違ったアナロジーを使用していると、あなたのいくつかは間違った考えを持って表示されますこれまで持っていて、VisualStudioをでhappsens何ChoiceOneとChoiceTwo
public partial class CustomControl1 : Control
{
public enum ChoiceOne
{
SubChoiceA,
SubChoiceB,
}
public enum ChoiceTwo
{
SubChoiceC,
SubChoiceD,
}
public enum Choice
{
ChoiceOne,
ChoiceTwo,
}
private Type _subChoice;
private Choice _choice;
public Type SetSubChoice
{
get
{
if (_choice.Equals(Choice.ChoiceOne))
{
return typeof(ChoiceOne);
}
else
{
return typeof(ChoiceTwo);
}
}
set
{
_subChoice = value;
}
}
public Choice SetChoice
{
get
{
return _choice;
}
set
{
_choice = value;
}
}
}
の間で選択することを可能にするには、プロパティグリッドは、あなたが正しいChoiceOneとChoiceTwo間SetChoiceプロパティを設定することを可能にするということです。
問題は、SetSubChoiceプロパティがグレー表示されているが、SetChoiceの設定に応じて 'WindowsFormsApplication4.CustomControl1 + ChoiceOne'または 'WindowsFormsApplication4.CustomControl1 + ChoiceTwo'のいずれかに設定されるという問題があります。私が欲しいのは、SetChoiceを使用して、SetChoiceの設定に応じてSubChoiceAまたはSubChoiceBまたはSubChoiceCまたはSubChoiceDを選択できるようにすることです。
たとえば、SetChoiceがChoiceOneに設定されている場合、SetSubChoiceによってChoiceAまたはChoiceBのいずれかを選択できます。 同様に、SetChoiceがChoiceTwoに設定されている場合、SetSubChoiceによってChoiceCまたはChoiceDのいずれかを選択できます。
これでもう少し明確になっていることを願っていますか?
私たちは今ほとんど存在しています。
ありがとうございました
あなたはタイプを返すことができません – BlackTigerX
"この男がやっていることは分かっています"と知っている時間があれば、これは便利だと思います... – Hugoware