如何在另一个项目中引用的用户控件中单击呼叫按钮?

用户名

我的解决方案中有两个项目,一个名为UserControls的WPF用户控件库,另一个名为ShopApplication的WPF应用程序。

在UserControls中,我创建了一个名为Product的简单类,该类具有一些属性(字符串名称示例),并由Caliburn Micro MVVM模式设计了用户控件,...我的视图在Views文件夹中是ProductListView.xaml,在ViewModels文件夹中viewmodel名为ProductListViewModel.cs 。ShopApplication始终是MVVM设计的。

我的看法如下所示:

    <UserControl x:Class="UserControls.Views.ProductListView"
         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:cal="http://www.caliburnproject.org"
         mc:Ignorable="d" 
         d:DesignHeight="300" d:DesignWidth="600"               
         >
      <Grid>
      <TextBox Name="SearchingText"/>
      <Button x:Name="Search" Content="Search"    
                   cal:Message.Attach="[Click]=[Search()]"/>        
      </Grid>
      </UserControl>

在我的ViewModel中,我有一个名为Search()的方法。

当我通过以下方式将用户控件包括在ShopApplication中时(在应用程序窗口视图中):

    <ContentControl DataContext="AreBoughtControl" >
        <userControls:ProductListView/>
    </ContentControl>
    <ContentControl DataContext="WillNeedToBuyControl" >       
         <userControls:ProductListView/>
    </ContentControl>

总是在我单击“搜索”按钮时未处理异常(未找到方法“搜索”的目标。)。但是,当我在应用程序窗口的ViewModel中定义Search方法时,可以并调用方法。

但是我不想在ShopApplication中调用方法,我需要在UserControl中调用方法,该方法在此列表中具有产品列表和搜索名称。

我怎样才能做到这一点 ?寻求答案

库马雷山

我不知道为什么在单击按钮时会引发异常。或者,您可以为按钮单击实现ICommand,而不是直接将搜索方法绑定到按钮单击。这将轻松解决您的问题。由于您的以下MVVM易于实现ICommand。

您可以参考以下链接以获取有关ICommand的详细信息

http://theprofessionalspoint.blogspot.in/2013/04/icommand-interface-and-relaycommand.html

http://www.codeproject.com/Articles/126249/MVVM-Pattern-in-WPF-A-Simple-Tutorial-for-Absolute

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在另一个Windows窗体项目中单击按钮来打开Outlook 2007 Addin项目

来自分类Dev

如何在另一个项目中引用一个类?

来自分类Dev

如何通过单击另一个用户控件中的按钮在用户控件中的文本框中显示一些文本?

来自分类Dev

如何在Eclipse / Java中的同一工作区中引用另一个项目中的类

来自分类Dev

在Wpf GridView中,如何将控件绑定到一个项目中的另一个控件

来自分类Dev

按钮单击事件未在用户控件中触发,而是在另一个用户控件中动态创建

来自分类Dev

PTVS:如何在另一个项目中引用或使用Python源代码

来自分类Dev

如何在java中的另一个项目中使用一个项目中的类?

来自分类Dev

如何在Intellij中调试项目同时在另一个项目中设置断点

来自分类Dev

如何重用解决方案中另一个项目的Web用户控件?

来自分类Dev

关闭子窗体,然后单击C#.net中的用户控件中的按钮,打开另一个窗体?

来自分类Dev

单击时如何将用户控件置于另一个控件的前面

来自分类Dev

单击微调器项目中的项目时如何启动另一个活动

来自分类Dev

在另一个项目中引用样式文件

来自分类Dev

Kotlin:如何在另一个Recyclerview中的Recyclerview中单击项目

来自分类Dev

如何在按钮单击事件中更改另一个表单名称

来自分类Dev

如何在按钮单击事件中从另一个类调用方法?

来自分类Dev

如何在.properties文件中引用另一个项目

来自分类Dev

如何在Unity C#脚本中引用另一个项目

来自分类Dev

如何在另一个QML文件中按ID引用项目?

来自分类Dev

如何在另一个项目 WPF 中引用枚举

来自分类Dev

如何在 VS Code 中添加对另一个项目的引用

来自分类Dev

在Visual Studio 2012中从另一个项目中的一个项目引用DLL

来自分类Dev

在Visual Studio 2012中从另一个项目中的一个项目引用DLL

来自分类Dev

在Gradle中的另一个项目中引用任务的输出

来自分类Dev

在Eclipse中引用另一个项目中的库

来自分类Dev

如何在另一个项目Xamarin项目中包含BroadcastReceiver?

来自分类Dev

通过位于另一个用户控件中的按钮将用户控件置于前面

来自分类Dev

如何在单击另一个按钮时单击一个按钮 angular 2?

Related 相关文章

  1. 1

    如何在另一个Windows窗体项目中单击按钮来打开Outlook 2007 Addin项目

  2. 2

    如何在另一个项目中引用一个类?

  3. 3

    如何通过单击另一个用户控件中的按钮在用户控件中的文本框中显示一些文本?

  4. 4

    如何在Eclipse / Java中的同一工作区中引用另一个项目中的类

  5. 5

    在Wpf GridView中,如何将控件绑定到一个项目中的另一个控件

  6. 6

    按钮单击事件未在用户控件中触发,而是在另一个用户控件中动态创建

  7. 7

    PTVS:如何在另一个项目中引用或使用Python源代码

  8. 8

    如何在java中的另一个项目中使用一个项目中的类?

  9. 9

    如何在Intellij中调试项目同时在另一个项目中设置断点

  10. 10

    如何重用解决方案中另一个项目的Web用户控件?

  11. 11

    关闭子窗体,然后单击C#.net中的用户控件中的按钮,打开另一个窗体?

  12. 12

    单击时如何将用户控件置于另一个控件的前面

  13. 13

    单击微调器项目中的项目时如何启动另一个活动

  14. 14

    在另一个项目中引用样式文件

  15. 15

    Kotlin:如何在另一个Recyclerview中的Recyclerview中单击项目

  16. 16

    如何在按钮单击事件中更改另一个表单名称

  17. 17

    如何在按钮单击事件中从另一个类调用方法?

  18. 18

    如何在.properties文件中引用另一个项目

  19. 19

    如何在Unity C#脚本中引用另一个项目

  20. 20

    如何在另一个QML文件中按ID引用项目?

  21. 21

    如何在另一个项目 WPF 中引用枚举

  22. 22

    如何在 VS Code 中添加对另一个项目的引用

  23. 23

    在Visual Studio 2012中从另一个项目中的一个项目引用DLL

  24. 24

    在Visual Studio 2012中从另一个项目中的一个项目引用DLL

  25. 25

    在Gradle中的另一个项目中引用任务的输出

  26. 26

    在Eclipse中引用另一个项目中的库

  27. 27

    如何在另一个项目Xamarin项目中包含BroadcastReceiver?

  28. 28

    通过位于另一个用户控件中的按钮将用户控件置于前面

  29. 29

    如何在单击另一个按钮时单击一个按钮 angular 2?

热门标签

归档