有沒有辦法將onCheckedChanged函數添加到動態複選框。這些複選框將在運行時添加到gridview,具體取決於gridview中的數據。將onCheckChanged添加到動態複選框
感謝所有
有沒有辦法將onCheckedChanged函數添加到動態複選框。這些複選框將在運行時添加到gridview,具體取決於gridview中的數據。將onCheckChanged添加到動態複選框
感謝所有
是的,你可以找到在GridView控件的RowDataBound事件行控制,並訂閱所需的事件代碼隱藏。只有當他們是在每次回發時重新創建
void CustomersGridView_RowDataBound(Object sender, GridViewRowEventArgs e)
{
if(e.Row.RowType == DataControlRowType.DataRow)
{
// Display the company name in italics.
((Checkbox)e.Row.FindControl("my_checkbox_id")).CheckedChanged += (sender, args) => {
// do something in handler
}
}
}
動態控件支持的事件。所以唯一的解決方案是連續(每次回發)將數據綁定到gridview。 如果你有包裝gridview綁定代碼!IsPostback條件刪除它並在此之後檢查。
順便提一下,如果gridview的數據源數據將被更改,每個動態控件都會得到一個新的UniqueID值,並且這些控件事件將不會被處理。
P.S.也許更好的方法是不要將控件添加到行中,而是根據DataItem中的數據設置Visible屬性值。在這種情況下,ItemTemplate中可能只有少數服務器控件,並只顯示其中一個。
感謝您的評論Yurly。這讓e更多地考慮我需要做什麼 –