无法添加第二个EventTriggerBehavior来控制 - UWP

时间:2016-06-29 18:33:42

标签: uwp eventtrigger

在用户控件中我有:

        <ToggleButton x:Name="toggleButton" Style="{StaticResource PaneToggleButton}"
                      Content="{Binding MyChromaticNotes.Root.Note}">
            <Interactivity:Interaction.Behaviors>
                <Core:EventTriggerBehavior EventName="Checked">
                    <Core:InvokeCommandAction
                        Command="{Binding AddSelectedCommand}" />
                </Core:EventTriggerBehavior>

                <Core:EventTriggerBehavior EventName="UnChecked">
                    <Core:InvokeCommandAction
                        Command="{Binding RemoveSelectedCommand}"/>
                </Core:EventTriggerBehavior>
            </Interactivity:Interaction.Behaviors>

        </ToggleButton>

这两个命令绑定到我的视图模型的'DelegateCommand'类型的静态属性,它实现了ICommand。 在视图模型构造函数中,我有:

        #region Add Selected
        AddSelectedCommand = new DelegateCommand(
            () => { SelectedTones.Add(MyChromaticNotes.Root.Note); },
            () => { return true; }
            );
        #endregion
        #region Remove Selected
        RemoveSelectedCommand = new DelegateCommand(
            () => { SelectedTones.Remove(MyChromaticNotes.Root.Note); },
            () => { return SelectedTones.Contains(MyChromaticNotes.Root.Note); }
            );
        #endregion

如果我尝试运行它,我会在输出窗口中找到“无法将'EventTriggerBehavior'的实例添加到BehaviorCollection类型的集合中”,但是如果我从XAML中移除第二个'EventTriggerBehavior'并从视图中删除相应的RemoveSelectedCommand DelegateCommand model它运行,我可以添加到SelectedTones(ObservableCollection类型)。

问题:为什么第二个EventTriggerBehavior不起作用,如何修复?

1 个答案:

答案 0 :(得分:0)

事件名称为 Unchecked 而不是 UnChecked

套管很重要。

相关问题