所以我試圖創建的顏色字典的形式創建字典條目包含列表<int>
Dictionary<string,List<int>>
像這樣:
(colour:colourvals)
例如,如果顏色是紅色:
("red":(255,0,0))
我對c#很新(約1周),但我有相當數量的python經驗。我試圖用Python實現看起來就像這樣:
col_dict = {"red":(255,0,0),
"blue":(255,0,0),
"green":(255,0,0)}
在C#中,很多修修補補之後我終於成功地讓一些作品。這是當前代碼我有(這似乎凌亂):
colDict = new Dictionary<string, List<int>>();
colDict.Add("red", new List<int> { 200, 40, 40 }.ToList());
colDict.Add("green", new List<int> { 40, 200, 40 }.ToList());
colDict.Add("blue", new List<int> { 40, 40, 200 }.ToList());
首先,有沒有更好的方式來做到這一點?
其次,然後我想使用列表值作爲Color.FromArgb()的參數。有沒有一些方法,我把表從colDict到像參數:
Color.FromArgb(colDict["green"]);
還是我來存儲顏色的選擇,然後把每個值在像這樣?
this.col = colDict[colour];
Color.FromArgb(this.col[0],this.col[1],this.col[2]));
非常感謝任何能夠幫助我的人! :)
在您的C#代碼中不需要'.ToList()'調用。你已經創建了一個新的列表!但是如果你總是要存儲三個整數(RGB值),爲什麼要使用列表的開銷?我會考慮使用內置類型,或者創建一個簡單的'struct'。 –
我編輯了你的標題。請參閱:「[應該在其標題中包含」標籤「](http://meta.stackexchange.com/questions/19190/)」,其中的共識是「不,他們不應該」。 –
我明白你的觀點,我將如何去構造顏色?類似於 colDict.Add(「red」,Color(255,0,0)); ? – mbdavis