上位機學習技巧——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發送不用的值