我產生幾個按鈕連接到它們的事件處理程序是這樣的:現在CommandEventArgs和事件問題
Button pgs = new Button();//Create New Topic
pgs.Width = 20;
pgs.Command += obtainTopicsPerPage_Click;
pgs.CommandName = tPage.ToString();
pgs.Text = tPage.ToString();
btns.Add(tPage.ToString());
buttons.Add(pgs);
}
void obtainTopicsPerPage_Click(Object sender, CommandEventArgs e)
{
foreach (var item in tPages)
{
if (item.Key == e.CommandName)
{
foreach (var posts in item.Value)
{
posts.ExecuteAll();
}
}
}
MyButtonTable();
}
,當我點擊按鈕的事件處理程序永遠不會觸發。我檢查與調試器,,當我按一下按鈕,只有回傳,,但它不到達事件處理程序內functoin
更新:
void Page_PreInit(object sender, EventArgs e)
{
List<Button> btn=(List<Button>)ViewState["Buttons"];
foreach (var item in btn)
{
item.Width = 20;
item.Command += obtainTopicsPerPage_Click; //resigning the eventhandlers from the begining
item.CommandName = tPage.ToString();
item.Text = tPage.ToString();
}
}
您是否在發佈後重新連接按鈕事件? – WraithNath 2011-06-15 10:45:34
不應該是pgs.Command + = new CommandEventHandler(this.obtainTopicsPerPage_Click); ? – Reniuz 2011-06-15 11:07:55
不是真的,Renius ...,不,我不WraithNath – Matrix001 2011-06-15 11:23:44