62,041
社区成员
发帖
与我相关
我的任务
分享
public void OnSortingBegin()
{
if (SortingBegin != null)
{
SortingBegin(this, new EventArgs());
}
}
protected override void OnPreRender(EventArgs e)
{
base.OnPreRender(e); //做这个dropdown应该做的事,先。
OnSortingBegin(); //排序前调用事件方法
SortItems(); //排序,忽略这个,先。
}
public class SortingCompleteEventArgs : EventArgs
{
private ListItem[] originalItems;
private ListItem[] sortedItems;
public ListItem[] OriginalItems
{
set { originalItems = value; }
get { return originalItems; }
}
public ListItem[] SortedItems
{
set { sortedItems = value; }
get { return sortedItems; }
}
public SortingCompleteEventArgs(int length)
{
originalItems = new ListItem[length];
sortedItems = new ListItem[length];
}
}
public delegate void SortingCompleteHandler(object sender, SortingCompleteEventArgs arg);
public event SortingCompleteHandler SortingComplete;
public void OnSortingComplete(SortingCompleteEventArgs arg)
{
if (SortingComplete != null)
{
SortingComplete(this, arg);
}
}
protected override void OnPreRender(EventArgs e)
{
base.OnPreRender(e);
SortingCompleteEventArgs arg = new SortingCompleteEventArgs(this.Items.Count);
Items.CopyTo(arg.OriginalItems, 0);
OnSortingBegin(); //调用事件1的方法。
SortItems(); //排序方法,忽略,先。
Items.CopyTo(arg.SortedItems, 0);
OnSortingComplete(arg); //调用事件2的方法。
}