代码:
MoveDrop.ascx.cs中的代码: public void Button1_Click(object sender, EventArgs e)
{
ClickEventArgs el = new ClickEventArgs();
ButtonClick(this, el);
}
public delegate void ClickHander(object sender, ClickEventArgs e);
public event ClickHander ButtonClick;
}
public class ClickEventArgs : EventArgs
{
public string abc = "saas";
}news.aspx.cs中的代码: protected MoveDrop move = new MoveDrop();
private void InitializeComponent()
{
this.Load += new System.EventHandler(this.Page_Load);
this.move.ButtonClick += new MoveDrop.ClickHander(move_ButtonClick);
} void move_ButtonClick(object sender, ClickEventArgs e)
{
throw new NotImplementedException();
Label1.Text = e.abc;
}问题:
在news页面中点击Button1,出现错误提示:
“未将对象引用设置到对象的实例”求助:
怎样解决这个问题,是什么地方出错?
求教,谢谢
MoveDrop.ascx.cs中的代码: public void Button1_Click(object sender, EventArgs e)
{
ClickEventArgs el = new ClickEventArgs();
ButtonClick(this, el);
}
public delegate void ClickHander(object sender, ClickEventArgs e);
public event ClickHander ButtonClick;
}
public class ClickEventArgs : EventArgs
{
public string abc = "saas";
}news.aspx.cs中的代码: protected MoveDrop move = new MoveDrop();
private void InitializeComponent()
{
this.Load += new System.EventHandler(this.Page_Load);
this.move.ButtonClick += new MoveDrop.ClickHander(move_ButtonClick);
} void move_ButtonClick(object sender, ClickEventArgs e)
{
throw new NotImplementedException();
Label1.Text = e.abc;
}问题:
在news页面中点击Button1,出现错误提示:
“未将对象引用设置到对象的实例”求助:
怎样解决这个问题,是什么地方出错?
求教,谢谢
namespace MyCollections
{
using System.Collections; // A delegate type for hooking up change notifications.
public delegate void ChangedEventHandler(object sender, EventArgs e); // A class that works just like ArrayList, but sends event
// notifications whenever the list changes.
public class ListWithChangedEvent: ArrayList
{
// An event that clients can use to be notified whenever the
// elements of the list change.
public event ChangedEventHandler Changed; // Invoke the Changed event; called whenever list changes
protected virtual void OnChanged(EventArgs e)
{
if (Changed != null)
Changed(this, e);
} // Override some of the methods that can change the list;
// invoke event after each
public override int Add(object value)
{
int i = base.Add(value);
OnChanged(EventArgs.Empty);
return i;
} public override void Clear()
{
base.Clear();
OnChanged(EventArgs.Empty);
} public override object this[int index]
{
set
{
base[index] = value;
OnChanged(EventArgs.Empty);
}
}
}
}namespace TestEvents
{
using MyCollections; class EventListener
{
private ListWithChangedEvent List; public EventListener(ListWithChangedEvent list)
{
List = list;
// Add "ListChanged" to the Changed event on "List".
List.Changed += new ChangedEventHandler(ListChanged);
} // This will be called whenever the list changes.
private void ListChanged(object sender, EventArgs e)
{
Console.WriteLine("This is called when the event fires.");
} public void Detach()
{
// Detach the event and delete the list
List.Changed -= new ChangedEventHandler(ListChanged);
List = null;
}
} class Test
{
// Test the ListWithChangedEvent class.
public static void Main()
{
// Create a new list.
ListWithChangedEvent list = new ListWithChangedEvent(); // Create a class that listens to the list's change event.
EventListener listener = new EventListener(list); // Add and remove items from the list.
list.Add("item 1");
list.Clear();
listener.Detach();
}
}
}
http://www.cnblogs.com/emanlee/archive/2008/01/21/1047242.html
http://www.cnblogs.com/syveen/archive/2007/06/25/795259.html
http://www.cnblogs.com/professor/archive/2008/10/28/1320935.html
{
.....
}