我在一个解决方案中有两个独立的项目,一个是 wpf,另一个是 windows 窗体,我已将 winform 引用到 wpf 项目。wpf 窗口内是一个图像控件,单击时会出现一个带有按钮的 windows 窗体.
单击winform中的按钮时,我如何能够更改wpf表单中图像控件的图像源...
我看到了一个类似的问题,但我无法理解答案......
我在一个解决方案中有两个独立的项目,一个是 wpf,另一个是 windows 窗体,我已将 winform 引用到 wpf 项目。wpf 窗口内是一个图像控件,单击时会出现一个带有按钮的 windows 窗体.
单击winform中的按钮时,我如何能够更改wpf表单中图像控件的图像源...
我看到了一个类似的问题,但我无法理解答案......
您可以将委托/操作传递到 Winform 以执行操作
这是一个非常简单的例子
WPF
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
private void Button_Click_1(object sender, RoutedEventArgs e)
{
// pass in the method you want to call when the winform button is clicked
var winform = new Form1(() => ChangeImage()).ShowDialog();
}
private void ChangeImage()
{
// your change image logic
}
}
窗体
public partial class Form1 : Form
{
private Action _action;
public Form1()
{
InitializeComponent();
}
public Form1(Action action)
{
_action = action;
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
if (_action != null)
{
// call the method in the WPF form
_action.Invoke();
}
}
}