私のプログラミング中間期には、幽霊の多い家を作る必要があります。 Enumを使用する必要があります。私は他のフォームでEnumを呼び出すのに問題があります。リストボックスでEnumを使用する方法を理解できません
これは、私がリストボックスで列挙型を使用しようとしているフォームからのコードです。
private void lstRooms_SelectedIndexChanged(object sender, EventArgs e)
{
string room = lstRooms.Text;
RoomChoice rooms = new RoomChoice(room);
if (room = "Den")
{
}
if (room = "DH")
{
}
if (room = "UH")
{
}
if (room = "Bedroom")
{
}
if (room = "Basement")
{
}
if (room = "Greenhouse")
{
}
if (room = "Attic")
{
}
if (room = "WW")
{
}
これはEnumsのコードです。
class RoomChoice
{
public string room;
public RoomChoice(string room)
{
// TODO: Complete member initialization
this.room = room;
}
public enum Room
{
Den,
DH,
UH,
Bedroom,
Basement,
Greenhouse,
Attic,
WW
}
class DecideRoom
{
public Room roomchoice { get; set; }
public void DecideRooms(string room)
{
roomchoice = (Room)Enum.Parse(typeof(Room), room);
}
}
}
申し訳ありませんが、それはスーパー明白な間違いだ場合、私はC#に非常に新しいですし、列挙型は私に混乱しています。どんな助けでも大変感謝します。
あなたは質問への答えではないでしょうけど、あなたは 'の代わりに'スイッチ()を使用する必要がありますが、 'IF()' – pirs
あなたが本当にその全体 'RoomChoice'クラスが必要ですか?なぜ彼らの選択肢を 'enum'として保存しないのですか?文字列を列挙型に変換したり、その逆に変換する方法はすでにあります。 –
それでは、Enumとしての選択肢をどのように保存するのですか? –