首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >找不到MVVM EventToCommand

找不到MVVM EventToCommand
EN

Stack Overflow用户
提问于 2014-08-13 07:04:09
回答 3查看 2.5K关注 0票数 1

嗨,我正试图在列表框的项中实现单击效果,但是我一直收到以下错误:

未找到类型'cmd:EventToCommand‘。确认您没有丢失程序集引用,并且所有引用的程序集都已生成。

代码语言:javascript
复制
<catel:UserControl
         xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
         xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
         xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
         xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
         xmlns:catel="http://catel.codeplex.com"
         xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
         xmlns:cmd="http://www.galasoft.ch/mvvmlight"
         mc:Ignorable="d" 
         d:DesignHeight="300" d:DesignWidth="300">

以及我尝试实现on方法的代码:

代码语言:javascript
复制
<Grid>
    <ItemsControl ItemsSource="{Binding Source={StaticResource cvsRoutes}}">
        <ItemsControl.ItemTemplate>
            <DataTemplate>
                <Expander Header="{Binding Name}" MinHeight="50">
                    <ListBox>
                        <i:Interaction.Triggers>
                            <i:EventTrigger EventName="PreviewMouseLeftButtonDown">
                                <cmd:EventToCommand Command="{Binding PreviewMouseLeftButtonDownCommand}" PassEventArgsToCommand="True"/>
                            </i:EventTrigger>
                        </i:Interaction.Triggers>
                        <TextBlock Text="Something" >
                        <i:Interaction.Triggers>
                            <i:EventTrigger EventName="KeyUp">
                                <cmd:EventToCommand Command="{Binding KeyUpCommand}" PassEventArgsToCommand="True"/>
                            </i:EventTrigger>
                        </i:Interaction.Triggers>
                        </TextBlock>
                        <TextBlock Text="Something" />
                        <TextBlock Text="Something" />
                        <TextBlock Text="Something" />
                        <TextBlock Text="Something" />
                    </ListBox>
                </Expander>
            </DataTemplate>
        </ItemsControl.ItemTemplate>
    </ItemsControl>
</Grid>

你能告诉我问题出在哪里吗?我该怎么解决?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-08-13 13:51:28

下面列出了Catel中可用的所有行为和触发器,以及如何使用它们:

https://catelproject.atlassian.net/wiki/pages/viewpage.action?pageId=1409064

它还包括EventToCommand:

https://catelproject.atlassian.net/wiki/display/CTL/EventToCommand

票数 2
EN

Stack Overflow用户

发布于 2014-08-13 07:12:12

EventToCommand是MVVM的一部分-光.下面是MVVM (Laurent )的作者的一个MSDN文章,他在这里讨论了如何使用它。

您也可以查看类似的回答这里,但我想您的选项要么是使用MVVM(如果您想使用它),要么是对他的代码进行排序,自己实现类似的东西……

票数 1
EN

Stack Overflow用户

发布于 2014-08-13 07:19:07

GalaSoft.MvvmLight库添加到引用中。然后

使用此xmlns:cmd="clr-namespace:GalaSoft.MvvmLight;assembly=GalaSoft.MvvmLight"而不是xmlns:cmd="http://www.galasoft.ch/mvvmlight"

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

https://stackoverflow.com/questions/25280047

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档