zoukankan      html  css  js  c++  java
  • WPF Caliburn 学习笔记(二)Command(2)

    首先解决上一篇博客未解决的问题。上次博客中还有一种命令(BoundCommad)没讲到。

    命令源还是不变的。变得是:我们对命令源封装成属性:

    命令源ShowMessageCommand:

    代码

    新建一个MainModel类,对ShowMessageCommand封装成属性。

     public class MainModel
        {
           private readonly ShowMessageCommand _myCommand = new ShowMessageCommand();
    
           public ShowMessageCommand MyCommand
           {
               get { return _myCommand; }
           }
        }
    

    xaml:

    <Window.DataContext>
        <local:MainModel />
    </Window.DataContext>
    <StackPanel>
        <TextBox Name="message" Width="200" />
        <Button Content="BoundCommand" 
         cal:Message.Attach="BoundCommand MyCommand(message.Text)"/>
    </StackPanel>
    这里注意是DataContent。DataContext与Resource的区别是
    DataContext一般用于绑定数据,相当于数据源。
    Resource一般用于对资源的引用,比如 StaticResource,DynamicResource等。
    运行效果:
    image

    CompositeCommands

    Caliburn中的命令还有层次关系。

    还是用原来的资源。稍作修改。

    App.xaml.cs

    代码

    这里用到了注入容器来实现命令。

    ShowTitleMessageCommand.cs类

     

    代码

  • 相关阅读:
    Android学习小Demo一个显示行线的自定义EditText
    Android中自定义checkbox样式
    android圆角View实现及不同版本这间的兼容
    android下大文件分割上传
    drwtsn32.exe 遇到问题须要关闭。我们对此引起的不便表示抱歉
    【分享】深入浅出WPF全系列教程及源码
    iOS国际化时遇到的错误:read failed: the data couldn&#39;t be read because it isn&#39;t in the correct format.
    void及void指针含义的深刻解析
    堆和栈的差别(转过无数次的文章)
    sizeof,终极无惑(上)
  • 原文地址:https://www.cnblogs.com/dingli/p/1984398.html
Copyright © 2011-2022 走看看