wpf 我可以执行命令逻辑从不同的类在xaml

bvjxkvbb  于 2023-10-22  发布在  其他
关注(0)|答案(1)|浏览(99)

我有一个公共类DataGridRowCopyAction。

public class DataGridRowCopyAction
{
    public ICommand RowCopyCommand = new DelegateCommand(RowCopyAction)

    Private void RowCopyAction
    {
        // do something 
    }
}

我可以在多个xamls中使用RowCopyCommand作为公共命令吗?我尝试了下面的方法。但它不起作用

xmlns:b="clr-namespace:x.y"
Command={Binging path=b:RowCopyCommand}

命令

dldeef67

dldeef671#

如果你有任何非视图模型类,例如,你定义你的命令如下:

namespace YourNameSpace
 {
    public class YourCommand : ICommand
    {
        public bool CanExecute(object par)
        {
            // Define your logic
            return true;
        }
    
        public void Execute(object par)
        {
            // Define the action you want             
        }
    
        public event EventHandler 

CanExecuteChanged;
        }    
      

}

您需要在XAML或代码隐藏中创建命令逻辑类的示例。例如,在XAML中:

<Window x:Class="YourApp.MainWindow"
       xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
       xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
       xmlns:local="clr-namespace:YourNameSpace">
    <Window.Resources>
        <local:YourCommand x:Key="YourCommand" />
    </Window.Resources>

最后,在XAML控件中,可以将Command属性绑定到命令逻辑类的示例:

<Button Content="Execute Command" Command="{StaticResource YourCommand}" />

相关问题