Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何使用用于按钮的WPF命令从另一个类调用方法?_C#_Wpf_Xaml_Command_Commandparameter - Fatal编程技术网

C# 如何使用用于按钮的WPF命令从另一个类调用方法?

C# 如何使用用于按钮的WPF命令从另一个类调用方法?,c#,wpf,xaml,command,commandparameter,C#,Wpf,Xaml,Command,Commandparameter,我是WPF的新手,我一直在互联网上搜索,还没有找到解决我问题的方法。我的问题是,如何使用命令从另一个类调用方法,而不是在代码隐藏中调用方法?命令是从另一个类调用方法的唯一方法,这对吗?我知道你可以简单地在按钮点击中创建一个对象引用,但是我不想这样做,因为我的项目很复杂 假设我想使用MainWindow.xaml中按钮内的命令函数从ClassA调用Print函数,如何实现这一点 视图模型:ClassA.cs public class ClassA { Print()

我是WPF的新手,我一直在互联网上搜索,还没有找到解决我问题的方法。我的问题是,如何使用命令从另一个类调用方法,而不是在代码隐藏中调用方法?命令是从另一个类调用方法的唯一方法,这对吗?我知道你可以简单地在按钮点击中创建一个对象引用,但是我不想这样做,因为我的项目很复杂

假设我想使用MainWindow.xaml中按钮内的命令函数从ClassA调用Print函数,如何实现这一点

视图模型:ClassA.cs

public class ClassA
    {
        Print()
        {
           Console.WriteLine("Hello");
        }
    }
视图:MainWindow.xaml

<button Command=? ><button/>

如果
ClassA
是视图的
DataContext
,则可以这样声明一个按钮(假设类中有一个名为
PrintCommand
ICommand
):


非常感谢你的帮助。
<Button Content="Print" Command="{Binding PrintCommand}" />
private RelayCommand printCommand;
public RelayCommand PrintCommand
{
    get { return printCommand?? (printCommand = new RelayCommand(param => ExecutePrintCommand())); }
}

private void ExecutePrintCommand()
{
    // your code here
}