繁体   English   中英

WPF绑定IsEnabled是否为未绑定的复选框?

[英]WPF Bind IsEnabled for an unbound checkbox?

我有一个网格,其中取消选中/检查标题行中的框在所有行的此列的框中的每一行上都相同。 该列未绑定到视图模型,使用此处的实现: http//www.devexpress.com/Support/Center/p/E1263.aspx

这是带有复选框的列的标记。 这会创建一个框用户点击将该行标记为已签名:

<dxg:GridColumn FieldName="UnboundCheck" Header="SignOff" UnboundType="Boolean"  Width="85px" Visible="True" >
    <dxg:GridColumn.HeaderTemplate>
        <DataTemplate>
            <dxe:CheckEdit Content="{Binding}"  Checked="CheckEdit_Checked" Unchecked="CheckEdit_Unchecked"/>
        </DataTemplate>
    </dxg:GridColumn.HeaderTemplate>
</dxg:GridColumn>

用户还可以单击每个复选框,但是首先需要检查用户权限。 我需要在每一行上根据另一列设置IsEnabled,该列指示用户是否有权勾选该框。 我尝试将CellTemplate添加到GrideColumn,并使用这样的绑定:

    <dxg:GridColumn.CellTemplate>
        <DataTemplate>
             <dxe:CheckEdit Content=" hi" IsEnabled="{Binding CanBeSignedOff,RelativeSource={RelativeSource TemplatedParent},diag:PresentationTraceSources.TraceLevel=High}" />
        </DataTemplate>
    </dxg:GridColumn.CellTemplate>

但绑定不起作用,错误消息:

System.Windows.Data Error: 40 : BindingExpression path error: 'CanBeSignedOff' property not found on 'object' ''CellEditor' (Name='PART_CellEditor')'. BindingExpression:Path=CanBeSignedOff; DataItem='CellEditor' (Name='PART_CellEditor'); target element is 'CheckEdit' (Name=''); target property is 'IsEnabled' (type 'Boolean')

我也尝试过:

{Binding CanBeSignedOff,RelativeSource={RelativeSource AncestorType={x:Type dxg:GridRow}}

但得到了“在'对象'''GridRow'上找不到属性的路径错误”

当柱子无界时,是否可以在细胞上使用结合?

更改

<dxe:CheckEdit Content=" hi" IsEnabled="{Binding CanBeSignedOff,RelativeSource={RelativeSource TemplatedParent},diag:PresentationTraceSources.TraceLevel=High}" /

<dxe:CheckEdit Content=" hi" IsEnabled="{Binding DataContext.CanBeSignedOff,RelativeSource={RelativeSource TemplatedParent},diag:PresentationTraceSources.TraceLevel=High}" /

要么

<dxe:CheckEdit Content=" hi" IsEnabled="{Binding DataContext.RowData.Row.CanBeSignedOff,RelativeSource={RelativeSource TemplatedParent},diag:PresentationTraceSources.TraceLevel=High}" /

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM