<dx:ASPxGridView ID="grid" runat="server" AutoGenerateColumns="False" DataSourceID="xds"
KeyFieldName="Oid">
<Columns>
<dx:GridViewDataTextColumn FieldName="Oid" ReadOnly="True" VisibleIndex="0" SortOrder="Ascending">
</dx:GridViewDataTextColumn>
<dx:GridViewDataTextColumn FieldName="Title" VisibleIndex="1">
</dx:GridViewDataTextColumn>
<dx:GridViewDataCheckColumn FieldName="Active" VisibleIndex="2">
<DataItemTemplate>
<dx:ASPxCheckBox ID="chk" runat="server" Value='<%# Eval("Active") %>' OnInit="chk_Init">
</dx:ASPxCheckBox>
</DataItemTemplate>
</dx:GridViewDataCheckColumn>
</Columns>
</dx:ASPxGridView>
上面是前台页面代码,视图控件加载 dx:ASPxCheckBox控件时初始化 触发Oninit事件,在Oninit事件服务端写入需要调用js的代码
protected void chk_Init(object sender, EventArgs e)
{
ASPxCheckBox chk = sender as ASPxCheckBox;
GridViewDataItemTemplateContainer container = chk.NamingContainer as GridViewDataItemTemplateContainer;
chk.ClientSideEvents.CheckedChanged = String.Format("function (s, e) {{ OnGridFocusedRowChanged('{0}');}}", container.KeyValue);
}
OnGridFocusedRowChanged 是页面js,container.KeyValue主键值,也可以传其它的值。
function OnGridFocusedRowChanged(s) {
//js 逻辑处理
};