'How do i change a list to enum?
I have a list element that I am using for cards. I cannot use this element and need to exchange it with enum. Is it possible? This is the code. The values added are fine but i just need to make it so that they could work in an enum element. I have tried exchanging the list code with just enum but it expectedly did not work. I do not know enough about this language and thus i have to ask for help no matter how simple the question might be. I'm using Microsoft visual studio 2019.
public partial class Form1 : Form
{
//start screen
List<Card> playercardList = new List<Card>()
{
new Card() { Value = 0, Name = "null", Image = "null" }
};
List<Card> bankercardList = new List<Card>()
{
new Card() { Value = 0, Name = "null", Image = "null" }
};
int playercardSum = 0;
int bankercardSum = 0;
Random random = new Random();
List<int> usedCards = new List<int>();
List<PictureBox> bankerbox = new List<PictureBox>();
List<PictureBox> playerbox = new List<PictureBox>();
// card value and image
#region creationof52carddeck
List<Card> deck = new List<Card>()
{
#region spades
new Card() { Value = 2, Name = "Two Spades", Image = "2S.png" },
new Card() { Value = 3, Name = "Three Spades", Image = "3S.png"},
new Card() { Value = 4, Name = "Four Spades", Image = "4S.png"},
new Card() { Value = 5, Name = "Five Spades", Image = "5S.png" },
new Card() { Value = 6, Name = "Six Spades", Image = "6S.png" },
new Card() { Value = 7, Name = "Seven Spades", Image = "7S.png" },
new Card() { Value = 8, Name = "Eight Spades", Image = "8S.png" },
new Card() { Value = 9, Name = "Nine Spades", Image = "9S.png" },
new Card() { Value = 10, Name = "Ten Spades", Image = "10S.png" },
new Card() { Value = 10, Name = "Jack Spades", Image = "JS.png" },
new Card() { Value = 10, Name = "Queen Spades", Image = "QS.png" },
new Card(){ Value = 10, Name = "King Spades", Image = "KS.png" },
new Card(){ Value = 11, Name = "Ace Spades", Image = "AS.png" },
#endregion
#region diamonds
new Card() { Value = 2, Name = "Two Diamonds", Image = "2D.png" },
new Card() { Value = 3, Name = "Three Diamonds", Image = "3D.png" },
new Card() { Value = 4, Name = "Four Diamonds", Image = "4D.png"},
new Card() { Value = 5, Name = "Five Diamonds", Image = "5D.png" },
new Card() { Value = 6, Name = "Six Diamonds", Image = "6D.png" },
new Card(){ Value = 7, Name = "Seven Diamonds", Image = "7D.png" },
new Card() { Value = 8, Name = "Eight Diamonds", Image = "8D.png" },
new Card() { Value = 9, Name = "Nine Diamonds", Image = "9D.png" },
new Card() { Value = 10, Name = "Ten Diamonds", Image = "10D.png" },
new Card() { Value = 10, Name = "Jack Diamonds", Image = "JD.png" },
new Card() { Value = 10, Name = "Queen Diamonds", Image = "QD.png" },
new Card(){ Value = 10, Name = "King Diamonds", Image = "KD.png" },
new Card(){ Value = 11, Name = "Ace Diamonds", Image = "AD.png" },
#endregion
#region clubs
new Card() { Value = 2, Name = "Two Clubs", Image = "2C.png" },
new Card() { Value = 3, Name = "Three Clubs", Image = "3C.png" },
new Card() { Value = 4, Name = "Four Clubs", Image = "4C.png"},
new Card() { Value = 5, Name = "Five Clubs", Image = "5C.png" },
new Card() { Value = 6, Name = "Six Clubs", Image = "6C.png" },
new Card(){ Value = 7, Name = "Seven Clubs", Image = "7C.png" },
new Card() { Value = 8, Name = "Eight Clubs", Image = "8C.png" },
new Card() { Value = 9, Name = "Nine Clubs", Image= "9C.png" },
new Card() { Value = 10, Name = "Ten Clubs", Image = "10C.png" },
new Card() { Value = 10, Name = "Jack Clubs", Image = "JC.png" },
new Card() { Value = 10, Name = "Queen Clubs", Image = "QC.png" },
new Card(){ Value = 10, Name = "King Clubs", Image = "KC.png" },
new Card(){ Value = 11, Name = "Ace Clubs", Image = "AC.png" },
#endregion
#region hearts
new Card() { Value = 2, Name = "Two Hearts", Image = "2H.png" },
new Card() { Value = 3, Name = "Three Hearts", Image = "3H.png" },
new Card() { Value = 4, Name = "Four Hearts", Image = "4H.png"},
new Card() { Value = 5, Name = "Five Hearts", Image = "5H.png" },
new Card() { Value = 6, Name = "Six Hearts", Image = "6H.png" },
new Card(){ Value = 7, Name = "Seven Hearts", Image = "7H.png" },
new Card() { Value = 8, Name = "Eight Hearts", Image = "8H.png" },
new Card() { Value = 9, Name = "Nine Hearts", Image = "9H.png" },
new Card() { Value = 10, Name = "Ten Hearts", Image = "10H.png" },
new Card() { Value = 10, Name = "Jack Hearts", Image = "JH.png" },
new Card() { Value = 10, Name = "Queen Hearts", Image = "QH.png" },
new Card(){ Value = 10, Name = "King Hearts", Image = "KH.png" },
new Card(){ Value = 11, Name = "Ace Hearts", Image = "AH.png" }
#endregion
};
#endregion
Solution 1:[1]
You can try foreach like below example,
var dayNames = new List<string> {"Monday", "Tuesday ", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"};
var dayValues = new List<DayOfWeek>();
foreach (var dayName in dayNames)
{
var dayValue = (DayOfWeek) Enum.Parse(typeof(DayOfWeek), dayName);
dayValues.Add(dayValue);
}
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 | Keshav Pratap K |
