在WPF用户控件上添加自定义Windows控件

时间:2012-02-02 19:32:48

标签: wpf xaml user-controls

我有一个WinForms用户控件(工具栏),我想在WPF用户控件上添加,有没有办法做到这一点?

就像我想要一个WinForms用户控件(工具栏)以及其他WPF控件 (新的WPF用户控件上的(datagrid)

我看到了一些示例,显示了WPF控件中托管的Windows窗体。但这不是我想看到的。

2 个答案:

答案 0 :(得分:1)

这很容易实现。有一个方便的小东西称为WindowsFormHost,您只需在控件的XAML中声明它,并将窗体控件嵌套在其中,如下所示:

<UserControl>
...
<Grid>
  <WindowsFormsHost>
    <forms:MyFormsToolbarControl/>
  </WindowsFormHost>
</Grid>

...

WindowsFormHost生活在普通的WPF工具箱中,所以不难找到它。同时,有一个例子说明如何在这个位置的代码中生成等效的XAML ......

http://msdn.microsoft.com/en-us/library/ms751761.aspx

答案 1 :(得分:0)

您可以在此处查看我对类似问题的回答:

WPF hosting a WinForm, Tab Navigation problems

这也将向您展示如何修复位于wpf视图中的Windows控件的标签问题。