在Windows窗体C#中查看WPF形式

时间:2015-10-13 06:58:52

标签: c# wpf forms

我写这个方法不起作用

UserControl us = new UserControl();
us.Show();

2 个答案:

答案 0 :(得分:1)

您的控件必须位于窗口

Window  Window = new Window();
// window has a single content
// here it is usercontrol1
// to have many controls, use an intermediary like Grid or Canvas or any Panel derived class
window.Content = usercontrol1;

必须打开窗口。

// modeless (non blocking) opening
window.Show();

// modal (blocking) opening
window.Showdialog();

此致

答案 1 :(得分:1)

您无法显示UserControl。将您的UserControl更改为Window

XAML:

<Window x:Class="WindowsFormsApplication1.MyWindow"

而不是

<UserControl x:Class="WindowsFormsApplication1.UserControl1"

并在您的代码隐藏中,更改

public partial class UserControl1 : UserControl

public partial class MyWindow: Window

现在您可以致电new MyWindow().Show();。主要的好处是,通过在其中添加Windows窗体对话框和ElementHost以及UserControl,您不会使应用程序负担过重。

这样,您还可以从调用的Windows窗体类访问UserControl / Window的子窗口。