• 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类

     

    代码

  • 相关阅读:
    Product of Array Except Self
    如果裸写一个goroutine pool
    fasthttp 的 goroutine pool 实现探究
    golang实现权重轮询调度算法
    golang学习资料
    获取本机ip
    dnscache --源码笔记
    xsrftoken--源码笔记
    forwardport--源码笔记--注释
    golang 通过exec Command启动的进程如何关闭的解决办法 以及隐藏黑色窗口
  • 原文地址:https://www.cnblogs.com/dingli/p/1984398.html
Copyright © 2020-2023  润新知