RadWindow自带了OpenerElementID属性,可以绑定到html控件id或者server 控件的clientid属性,但Gridview中的模板列在设计时无法与RadWindow的OpenerElementID进行绑定.
因此需要在Gridview的ItemDataBound事件中对按钮onclick事件进行绑定,同时将每一列的ID属性作为参数传到函数中进行处理。
protected void gvwBookingItems_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType==DataControlRowType.DataRow)
{
HtmlControl ctl = (HtmlControl)e.Row.Cells[6].FindControl("btnOperate");
HtmlInputButton btn = ctl as HtmlInputButton;
btn.Attributes["onclick"] = "ShowIDWindow('"+DataBinder.Eval(e.Row.DataItem, "MissingSupplyInfoID").ToString()+"')";
}
}
<script type="text/javascript">
function ShowWindow(missingSupplyInfoID) {
var oWnd = $find("<%=RadWindow1.ClientID%>");
oWnd.setUrl('MissingSupplyInfo.aspx?MissingSupplyInfoID='+missingSupplyInfoID);
oWnd.show();
}
</script>