Callback ASPxGridView:当选中或取消选中GridViewDataCheckColumn时,如何禁用GridViewDataColumn?

Callback ASPxGridView:当选中或取消选中GridViewDataCheckColumn时,如何禁用GridViewDataColumn?,callback,devexpress,aspxgridview,Callback,Devexpress,Aspxgridview,我有一个包含以下列的ASPxGridView: <dx:GridViewDataCheckColumn FieldName="ProtocolEnabled" Caption="Protocol Enabled"> <DataItemTemplate> <asp:Literal ID="ltProtocolEnabled" runat="server" /> </DataItemTemplate> </dx:G

我有一个包含以下列的ASPxGridView:

<dx:GridViewDataCheckColumn FieldName="ProtocolEnabled" Caption="Protocol Enabled">
    <DataItemTemplate>
        <asp:Literal ID="ltProtocolEnabled" runat="server" />
    </DataItemTemplate>
</dx:GridViewDataCheckColumn>
<dx:GridViewDataColumn FieldName="ProtocolCount" Width="0" Caption="Protocol Count">

checkbox列中有一个带有文本的模板,因此我可以显示Yes/No而不是空复选框,但这可能是TMI。我需要做的是:

在编辑模式下:选中ProtocolEnabled时,我需要启用ProtocolCount文本框。取消选中ProtocolEnabled时,我需要禁用ProtocolCount并将其文本设置为0

我不是要一步一个脚印,而是要一个指向正确方向的总体指针。如果可能的话,我想使用回调。我还保证,在你回答这个问题时,我不会删除这个问题

更新:多亏了应答者,我被派往我需要去的方向。以下是我使用的代码:

<dx:GridViewDataCheckColumn FieldName="ProtocolEnabled" Caption="Protocol Enabled" CellStyle-HorizontalAlign="Left">
    <DataItemTemplate>
        <asp:Literal ID="ltProtocolEnabled" runat="server" />
    </DataItemTemplate>
    <PropertiesCheckEdit>
        <ClientSideEvents CheckedChanged="function(s,e) {ProtocolEnabledChecked(s);}" />
    </PropertiesCheckEdit>
</dx:GridViewDataCheckColumn>
<dx:GridViewDataColumn FieldName="ProtocolCount" Width="0" Caption="Protocol Count">

function ProtocolEnabledChecked(ck) {
    var x = gvApplicationServer.GetEditor("ProtocolCount");
    if (ck.GetValue()) {
        x.enabled = true;
    }
    else {
        x.SetValue(0);
        x.enabled = false;
    }        
}

函数ProtocolEnabledChecked(ck){
var x=gvApplicationServer.GetEditor(“ProtocolCount”);
if(ck.GetValue()){
x、 启用=真;
}
否则{
x、 设定值(0);
x、 启用=错误;
}        
}

这是客户端代码,而不是回调。

首先检查此项

显示是/否

  • 在HtmlRow上创建事件访问控件,并在 Literal Literal=ASPxGridView1.FindRowCellTemplateControl(例如VisibleIndex, ASPxGridView1.Columns[“Name”]作为GridViewDataColumn,“ASPxButtonEdit1”)作为文本; literal.Text=(bool)grid.GetRowValues(例如VisibleIndex,“columnName”)?“是”:“否”

  • 在“编辑行模板”中,按上述步骤操作

  • 如果您想执行一些客户端功能,那么。。在客户端单击创建客户端事件并使用复选框客户端方法。chkclientinstanceName.getValue();或其他要检查的内容是否已检查

  • 这些控件可由客户端访问,因此可以使用
    txtClientName.SetEnabled(true/false)启用/禁用

    如需更多帮助,请访问

    DevExpress.Web.ASPxEditors  ClientScript namespace..
    

    试着一步一步地做。。希望这会有帮助。

    你的回答为我指明了方向。我用我的解决方案更新了我的答案。