Ich habe eine abgeleitete Klasse aus der Button-Steuerelementklasse erstellt. Wenn ich das Steuerelement verwende, muss ich verhindern, dass es in einer bestimmten Situation aufgerufen wird. Die Situation ist bereits in der abgeleiteten Klasse myClick definiert. Ich vermutete, dass es einen Weg gibt, e.Cancel = true zu setzen, aber ich kann nicht. Können Sie einen einfachen Vorschlag zur Lösung dieser Aufgabe geben?Abbrechen der Ereignisaufruffolge in der zuvor aufgerufenen Methode
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");
}
}
}
statt _CLICK event_ der Zeichnung, die overrided i _onClick_ Funktion. Es klappt! –
Ja, so sollte man gehen :) –