Frank Dzaebel, erstellt am: 16.07.2006, zuletzt geändert: 16.07.2006
Kategorie: Implementation, .NET-Version: 2.0, [Download]
Beispiel für die Verwendung von EventArgs-Eigenschaften wie "Cancel" in eigenen Klassen.
Form1.cs:
using System;
using System.ComponentModel;
using System.Windows.Forms;
namespace CancelEvtArgs
{
public partial class Form1 : Form
{
public Form1() {InitializeComponent();}
private void Form1_Load(object sender,EventArgs e)
{
MyClass mc = new MyClass();
mc.Berechnet += new DelBerechnet(mc_Berechnet);
// -1, wenn Cancel==true, ansonsten 42
MessageBox.Show(mc.Summe(13, 29).ToString());
}
void mc_Berechnet(object sender,CancelEventArgs e)
{
e.Cancel = true; // hier zum Test auskommentieren
}
}
}
MyClass.cs:
using System.ComponentModel;
namespace CancelEvtArgs
{
class MyClass
{
public event DelBerechnet Berechnet;
public int Summe(int a, int b)
{
CancelEventArgs e = new CancelEventArgs();
Berechnet(this,e);
if (e.Cancel) return -1;
return a + b;
}
}
public delegate void DelBerechnet(object sender,CancelEventArgs e);
}