1
Buttonコントロールクラスから派生クラスを作成しました。私がコントロールを使用するとき、私はいくつかの状況で呼び出しから防ぐために行う必要があります。この状況は、派生クラスのmyClick関数ですでに定義されています。私はe.Cancel = trueを設定する方法があると推測しましたが、できません。この課題を解決するための簡単な提案はありますか?前の呼び出しメソッドでイベント呼び出しシーケンスを取り消す
public class SButton : Button
{
public SButton() : base()
{
Click += new System.EventHandler(myClick);
}
private void myClick(object sender, EventArgs e)
{
if(meHandsome)
{
// here I want to prevent no more event invocation!
}
}
}
public partial class UTeachAdvanced : DevExpress.XtraEditors.XtraUserControl
{
private void UTeachAdvanced_Load(object sender, EventArgs e)
{
SButton btn = new SButton();
Controls.Add(btn);
btn.Click += new EventHandler(delegate(object sender, EventArgs args)
{
Console.Write("ugly");
}
}
}
代わり_CLICK Event_加入のため、私は_onClick_機能をオーバーライド。できます! –
はい、これはあなたが行くべき方法です:) –