1樓:陽光的雷咩咩
先把父類裡兩個控制元件的修飾符改成public或protected(貌似預設不是)。
在子類裡:
this.a.selectindexchanged += this.f;
子類裡還需要定義相應的方法
this.f(ojbect sender, 引數型別 e)
c#視窗程式的控制元件如何觸發容器的click事件?
2樓:匿名使用者
嘗試了一下,form.mouseclick事件是無法和其它控制元件的control.click事件繫結的。這個方法基本不可行。
有以下兩種辦法:
1.將form的單擊事件執行的**封裝成方法,比如formclick(),任何需要單擊控制元件的地方,直接呼叫此方法,也就相當於執行form.mouseclick事件了。
2.重寫窗體控制元件中的事件定義,直接system.eventhandler事件繫結,比如在按鈕的事件繫結上寫:
this.btn.click += new system.
eventhandler(this.frmmain_click);(按鈕本身的事件不取消)。這種重寫後的,只需要繫結窗體事件到按鈕這些控制元件上,而不需要呼叫或單獨觸發。
foreach(control ct in this.controls)
ct.click += new eventhandler(form1_click);
3樓:
有個建議:另外弄一個全通明,無邊框的窗體form2,讓這個form2一直出現在原窗體的上方並跟隨移動,由於全透明,使用者感覺不到form2的存在。但是所有的滑鼠事件其實都發生在form2上,你可以在form2的mouse down裡面處理
4樓:匿名使用者
foreach(control ct in this.controls)
ct.click += new eventhandler(form1_click);
5樓:匿名使用者
為什麼你非要這麼做?你考慮過你這麼寫程式的合理性麼?
c#winform中怎麼用**觸發一個控制元件的點選事件?
6樓:匿名使用者
在buttona_click裡面加入:
buttonb_click(buttonb,new eventargs());
c#動態新增的控制元件準備完畢觸發什麼事件?
7樓:匿名使用者
private void button1_click(object sender, eventargs e)
// addcon方法修改如下
private void addcon(control con)//其餘**略……
}void form1_controladded(object sender, controleventargs e)
c#自定義控制元件內的子控制元件和父控制元件間事件怎麼傳遞?
8樓:匿名使用者
假設你的控制元件名稱為usercontrol1, 控制元件生各個label的名稱依次為label1, label2, ……
在控制元件usercontrol1後臺**中,對每個標籤的click事件程式設計
public partial class usercontrol1 : usercontrol
private void label1_click(object sender, eventargs e)
private void label2_click(object sender, eventargs e)
//有多少個標籤,就重複多少次!
//……
}這樣,usercontrol1佈置在窗體上後,滑鼠點選任何一個標籤,都會引發usercontrol1的click事件
9樓:輕哲學
**你用的是tablelayoutpanel麼?把**的enabled屬性設定為false,它就不再響應滑鼠事件了。如果是其他容器控制元件,也一個道理。
10樓:匿名使用者
在窗體的load事件里加入如下,
button1.click += new system.eventhandler(this.form1_click);
......
這樣就將其下的button1.click繫結到了form1_click裡了,自定義控制元件同理,就這樣簡單。
11樓:小小阿立哥
public partial class usercontrol1 : usercontrol
private void labels_click(object sender, eventargs e)
//在設計介面裡全選label控制元件同時選上,在屬性區裡選擇事件click事件選擇
//labels_click就可以所有的label控制元件都能返回預設的點選事件了
//不需要有多少都寫多少個事件啊!}
c# winform 怎樣給控制元件新增滾動條事件?
12樓:陽光的雷咩咩
測試了一下,可以使用自定義事件。
public partial class form1 : form;};
}protected override void wndproc(ref message m)
base.wndproc(ref m);
}private void button1_click(object sender, eventargs e)}
c# 如何在**中呼叫另一個控制元件的事件
13樓:落月
比如已經有了一個private void button1_click(object sender, eventargs e)
然後在例項化另一個按鈕的時候,
button button2 = new button();
button2.click+=new eventhandler(button1_click);
直接指向button1_click即可。
14樓:匿名使用者
其實你可以到設計**中找到一個btn的**段,記得是已經寫過單擊事件的btn。
複製到**中,你看看 就會明白的!
其中有委託事件!
15樓:匿名使用者
有兩個方法:
1. button1 呼叫 button2的方法,如: button2.performclick();
2. this.button2_click(null);
c自制控制元件如何新增的新的屬性,C 如何給現有類新增新屬性
在自定義控制元件的類中新增兩個成員 一個私有一個公開,把公開的set get 與私有成員關連,在set和get過程中還可以處理額外內容,如改變其它值執行其它 等。如下 所示,其中categoryattribute為屬性發組資訊,descriptionattribute為說明,defaultvalue...
C中怎麼觸發某按鍵的CLick事件
初學c 的。給你看段 剛開始接觸時寫的。語句比較弱,不過功能和你這個挺像。private void form1 keypress object sender,keypresseventargs e if e.keychar char keys.d2 if e.keychar char keys.d3...
C中如何使用SerialPort控制元件向微控制器傳送資料
其實很簡單,設定幾個引數即可,下面是我寫的從串列埠讀取ds18b20發回溫度的例子。namespace 串列埠通訊 private void form1 load object sender,eventargs e private void timer1 tick object sender,eve...