1

我尝试将其命名为“一个非常愚蠢的问题:WPF、对话框和表单”,但这是不允许的。

我正在用 C# 编写一个 WPF 程序。我创建了这个对话框: 一个对话框

从 Visual Studio 2010 中选择 Add -> New Item -> Windows Form,然后构建对话框。

我无法捕捉到“取消”。除此之外,它工作得很好。

我是这样称呼它的:

 AdjustAlpha dlg = new AdjustAlpha();
 dlg.ShowDialog();

我看过很多关于 WPF 和 Forms 之间区别的帖子。我试过使用 System.Windows.Forms,我试过这个:

 DialogResult result = new AdjustAlpha.ShowDialog();
 if (result == DialogResult.OK)

抛出很多错误。

我的错误只是在 WPF 应用程序中使用 WINDOWS 窗体吗?

4

1 回答 1

1

我认为混合 WinForms 和 WPF 已成为过去。然而,当你被项目/公司/TPS限制时,你就去做,你必须做什么!

如果您需要从 WinForms 启动 WPF 对话框,请查看如何使用ElementHost。如果您需要从 WPF 启动 WinForms 对话框 - 创建一个实现 WinForms 接口的类IWin32Window- 将其返回的句柄传递给 WinForm 的 ShowDialog。

于 2013-06-06T05:03:34.437 回答