上位機學習技巧——c#(原創)

(一直更新…….)

一、掃描可用串口

 方法一、

  for循環,比如掃描範圍位串口1~串口20,則循環20遍,循環內容是打開串口;

  使用 try{……}catch{ };

  如果打開成功,就添加該控件到下拉列表中,然後關閉串口;

  如果打開不成功,會跳轉到到catch,但是catch不填東西,會跳過,繼續執行新一輪循環;

  其實使用if()也可以實現。

 

 方法二、

  foreach (string s in SerialPort.GetPortNames()) //遍歷可用串口,並添加到comName控件里
  {
    this.comName.Items.Add(s);
  }

  使用SerialPort.GetPortNames()方法直接獲取所有可用串口,

  然後使用foreach遍歷添加到下拉列表中

 

二、捕獲鼠標移到控件(上升沿)/離開控件(下降沿)

   在窗體生成代碼中,找到對應按鈕(這裡使用butten1)區域,在區域內添加兩個事件,分別是:

  鼠標移到控件上:this.butten1.MouseHover += new System EvenHandler(this.button1_MouseHover) //這個this.button1_MouseHover是自定義一個方法,當鼠標移到button1上,方法觸發

  鼠標離開控件:    this.butten1.MouseLeave += new System EvenHandler(this.button1_MouseLeave) //這個this.button1_MouseLeave是自定義一個方法,當鼠標移開button1上,方法觸發

 

三、多個按鈕發送事件,添加同一發送方法

  首先自己定義一個方法體buttonAll

  然後在窗體代碼設計界面,把該方法添加到每個button被按事件里(需要把原被按事件方法刪除掉,使用自定義事件方法代替它)

  然後修改每個button的flg屬性,分別給他們貼上標籤,比如1,2,3,4

  然後提取傳進來的sender(即被按的button本體)的flg屬性,因此可以區分button實現不一樣的事情

  比如發送不一樣的字符串,把所有字符串存到一個數組裏面,然後發送flg值索引數組的元素,就可以實現不同的button發送不用的值