WinForm项目中使用UserControl(WPF)问题

韩雷 2019-09-23 07:42:15
我知道如果在WinForm项目中使用UserControl,就需要在Form上创建一个ElementHost控件作为UserControl的宿主。
而我的UserControl是个WPF界面,我能不能不通过在Form上添加ElementHost控件,在Form的代码中直接实例化UserControl然后显示出来?
例如:

UserControl1 m_uc;

private void button1_Click(object sender, EventArgs e)
{
//elementHost1.Child = m_uc; //这样可以显示我的WPF控件,但需要通过ElementHost控件

UserControl1 uc = new UserControl1();//我希望的是直接new一个,然后直接用。

uc.Show();//我希望uc能有个Show方法,这样就好了。



}
...全文
427 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
exception92 2019-09-23
  • 打赏
  • 举报
回复
貌似不能,还是放到winform窗体上弹出吧。
github_36000833 2019-09-23
  • 打赏
  • 举报
回复
你也可以用代码创建一个ElementHost宿主。
private void button1_Click(object sender, EventArgs e)
{
var elementHost = new System.Windows.Forms.Integration.ElementHost()
{
Size = new System.Drawing.Size(200, 100),
Child = new UserControl1(),
};
this.Controls.Add(elementHost );
}

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧