在我的窗體上,我有2個UserControls(ButtonDiscount,ButtonAdvertisment)繼承了FadeControl。 FadeControl繼承UserControl類,用於在淡出等控件上執行自定義內容。從另一個usercontrol訪問usercontrol的方法
我的2個用戶控件每個只有一個按鈕,因此這兩個缺乏想象力的名稱。
單擊其中一個usercontrols上的該按鈕,我需要從另一個UserControl訪問FadeControl中的方法。另一個按鈕則相反。
我已經做了下面,就在用戶控件ButtonDiscount事件點擊:
private void button1_Click(object sender, EventArgs e)
{
ButtonAdvertisment ba = (ButtonAdvertisment)this.Parent.Controls.Find("buttonAdvertisment1", true)[0];
ba.FadeOut(true);
}
它的工作原理就像一個魅力,但我不認爲這是正確的做法,是有另一種方式從另一個UserControl的父類訪問該方法?
我無法通過UserControl構造函數傳遞它,設計師每次都會發生故障。
你不能只調用'buttonAdvertisment1.FadeOut(true);'? –
@Mario號我從'ButtonDiscount'中看不到它。即使'FadeOut'是公開的。 –
啊,這是UserControl ButtonDiscount中的代碼...然後我看到了。然後使用事件,並在主窗體(用戶控件按鈕的容器)中將事件綁定到彼此的淡出方法。 –