首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >触发器“选中/未选中”在“三状态”复选框中未触发

触发器“选中/未选中”在“三状态”复选框中未触发
EN

Stack Overflow用户
提问于 2016-09-02 22:39:01
回答 1查看 698关注 0票数 1

我使用以下代码来使用MVVM实现三个状态复选框:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<CheckBox IsChecked="{Binding
              Path=IsValueChecked, 
              Mode=TwoWay, 
              UpdateSourceTrigger=Explicit}"
          Margin="3,10,0,0"
          IsThreeState="True">
  <i:Interaction.Triggers>
    <i:EventTrigger EventName="Checked">
      <i:InvokeCommandAction Command="{Binding Path=CheckCommand, 
                      RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"/>
    </i:EventTrigger>

    <i:EventTrigger EventName="Unchecked">
      <i:InvokeCommandAction Command="{Binding Path=CheckCommand, 
                      RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"/>
    </i:EventTrigger>
  </i:Interaction.Triggers>
</CheckBox>

在视图模型中,创建了类型为IsValueChecked的应通知属性“Nullable<bool>”。问题是,事件“选中”和“未选中”不会在单击复选框时触发。我错过了什么,请给我建议。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-09-03 01:48:09

扩展到Funk上面的注释,您似乎试图绑定到DataContext级别的DataGrid,但是您的绑定实际上将尝试绑定到DataGrid本身的属性。由于DataGrid没有CheckCommand属性,这将失败。

尝试将绑定路径更改为:

{Binding Path=DataContext.CheckCommand, RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39304009

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文