C#学习笔记-数据的传递(公共变量)以及Dictionary
? ? ?看的代碼越多,寫的代碼越多,就越是享受這些字符,終于漸漸懂得了那種傳聞中的成就感,特別是自己從看不懂然后一步一步學(xué),一個(gè)代碼一個(gè)代碼地敲,最后哪怕只是完成了一個(gè)小功能,也都是特別自豪的!這種自豪不用告訴別人,自己心里就是特別滿足!
? ? ?代碼最美的地方就在于所有的不可能都是有可能的......
?
?
? ? ?顯示的功能:
? ? ?1.通過選擇不同的按鈕,傳遞對(duì)應(yīng)的數(shù)據(jù)到對(duì)應(yīng)的窗口去;
? ? ?
? ? ?2.選擇其他,可以自己輸入新的數(shù)據(jù)在傳遞。
? ? ?
?
?
? ? ?傳遞數(shù)據(jù),最主要的就是涉及到了公共變量,開始設(shè)定一個(gè)公共變量,然后大家都用這個(gè)數(shù)據(jù),這樣傳遞的時(shí)候就變得特別方便了,不會(huì)你是一個(gè)數(shù)據(jù),我是一個(gè)數(shù)據(jù),大家的數(shù)據(jù)多了就徹底混亂了。
? ? ?這里我只定義了兩個(gè)公共變量:ChoicedName和NameType,其中NameType用的是Dictionary,因?yàn)檫@里面有:“中文”、“英文”、“韓語”等等數(shù)據(jù),放在Dictionary里特別合適。
? ? ?插播一句:開始沒想過用Dictionary的,開始是遇見enum的難題,上網(wǎng)查的資料,結(jié)果后面發(fā)現(xiàn)enum適用于靜態(tài)數(shù)據(jù)處理和記錄,換句話說就是,我這里的“其他名字類型”就沒辦法自己輸入,后來才半路看到了Dictionary的。(另:如果有大神能用enum實(shí)現(xiàn)這個(gè)功能,麻煩告知,將不勝感激!)
1 class PublicName 2 { 3 public static string ChoicedName; 4 //鍵和值,鍵必須是唯一的,而值不需要唯一的 5 public static Dictionary<int, string> NameType = new Dictionary<int, string>(); 6 }? ? ? 然后就是進(jìn)入軟件時(shí)開始選擇的窗口
? ? ?(這里是可以優(yōu)化的,不用每個(gè)都顯示加一個(gè)語言,只是現(xiàn)在懶得修改了)
1 public partial class ChoiceName : Form 2 { 3 Form1 form1 = new Form1(); 4 5 public ChoiceName() 6 { 7 InitializeComponent(); 8 } 9 10 private void button1_Click(object sender, EventArgs e) 11 { 12 PublicName.NameType.Add(1, "中文"); 13 PublicName.ChoicedName = "中文"; 14 form1.Show(); 15 this.Visible = false; 16 } 17 18 private void button2_Click(object sender, EventArgs e) 19 { 20 PublicName.NameType.Add(2, "英文"); 21 PublicName.ChoicedName = "英文"; 22 form1.Show(); 23 this.Visible = false; 24 } 25 26 private void button3_Click(object sender, EventArgs e) 27 { 28 PublicName.NameType.Add(3, "韓語"); 29 PublicName.ChoicedName = "韓語"; 30 form1.Show(); 31 this.Visible = false; 32 } 33 34 private void button4_Click(object sender, EventArgs e) 35 { 36 PublicName.NameType.Add(4, "法語"); 37 PublicName.ChoicedName = "法語"; 38 form1.Show(); 39 this.Visible = false; 40 } 41 42 private void button5_Click(object sender, EventArgs e) 43 { 44 OtherName oN = new OtherName(); 45 oN.Show(); 46 this.Visible = false; 47 } 48 }? ? ? 如果選擇的是“其他”,就需要進(jìn)入自己輸入的窗口界面去。
1 public partial class OtherName : Form 2 { 3 public OtherName() 4 { 5 InitializeComponent(); 6 } 7 8 private void button1_Click(object sender, EventArgs e) 9 { 10 PublicName.ChoicedName = textBox1.Text; 11 PublicName.NameType.Add(5, PublicName.ChoicedName); 12 Form1 ending = new Form1(); 13 ending.Show(); 14 this.Close(); 15 } 16 }? ? ?最后,不管是“中文”還是“其他”,都要傳遞數(shù)據(jù)到Form1,這就體現(xiàn)了公共變量的重要性了,剛剛的數(shù)據(jù)全部都是ChoicedName,所以,form1直接找ChoicedName就好了!
1 public partial class Form1 : Form 2 { 3 public Form1() 4 { 5 InitializeComponent(); 6 } 7 8 private void Form1_Load(object sender, EventArgs e) 9 { 10 comboBox1.Text = PublicName.ChoicedName; 11 } 12 13 private void button1_Click(object sender, EventArgs e) 14 { 15 Application.Exit(); 16 } 17 }?
轉(zhuǎn)載于:https://www.cnblogs.com/Aries-rong/p/5868716.html
總結(jié)
以上是生活随笔為你收集整理的C#学习笔记-数据的传递(公共变量)以及Dictionary的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2021年顶级服务器备份软件和解决方案
- 下一篇: 微信小程序商城模板平台分享