在线求事件如何调用,好了马上给分
public event EventHandler PassWordError;//密码错误
public void OnPassWordError(object sender, EventArgs e)
{
if (PassWordError != null)
PassWordError(sender, e);
}
--------------------------------
请问我在别的地方如何调用此事件
EventHandler e=new EventHandler ?????不知道怎么写
e. OnPassWordError ?????不知道怎么写
[解决办法]
直接调用 OnPassWordError(this,null)
[解决办法]
写一个事件处理函数,事件所属类的实例. PassWordError+=new EventHandler(事件处理函数);
[解决办法]
using System;
namespace Demo
{
class Program
{
static void Main(string[] args)
{
User user = new User();
user.PassWordError += new User.PassWordErrorHandler(user_PassWordError);
//test
user.Login("admin", "456");
user.Login("admin", "123");
user.Login("users", "123");
Console.ReadLine();
}
static void user_PassWordError(object sender, PassWordErrorEventArgs e)
{
Console.WriteLine(e.Error);
}
}
public class User
{
public delegate void PassWordErrorHandler(object sender, PassWordErrorEventArgs e);
public event PassWordErrorHandler PassWordError;
public User() { }
public void Login(string username,string pwd)
{
if (username != "admin"
[解决办法]
pwd != "123")
OnPassWordError(new PassWordErrorEventArgs("用户名或密码不正确!"));
else
Console.WriteLine("登录成功!");
}
private void OnPassWordError(PassWordErrorEventArgs e)
{
PassWordErrorHandler temp = PassWordError;
if (temp != null)
temp(this, e);
}
}
public class PassWordErrorEventArgs : EventArgs
{
public string Error { get; private set; }
public PassWordErrorEventArgs(string err)
{
Error = err;
}
}
}
了
[解决办法]
写一个事件处理函数,事件所属类的实例. PassWordError+=new EventHandler
[解决办法]