无法将类型'System.Windows.Forms.Control'隐式转换为'对象'

时间:2014-11-26 15:35:33

标签: c# wpf winforms

我正在走过WPF Walkthrough: Hosting a Windows Forms Composite Control in WPF.

基本上它首先使用Windows Form创建了一个用户控件,然后将其添加到WPF应用程序中。

我已完成用户控件,现在我正在实现代码隐藏文件。由于它只是来自MSDN链接的复制和粘贴代码,所以让我们看一下该方法。

private void Init(object sender, EventArgs e)
    {
        app = System.Windows.Application.Current;
        myWindow = (Window)app.MainWindow;
        myWindow.SizeToContent = SizeToContent.WidthAndHeight;
        wfh.TabIndex = 10;
        initFontSize = wfh.FontSize;
        initFontWeight = wfh.FontWeight;
        initFontFamily = wfh.FontFamily;
        initFontStyle = wfh.FontStyle;
        initBackBrush = (SolidColorBrush)wfh.Background;
        initForeBrush = (SolidColorBrush)wfh.Foreground;
        (wfh.Child as MyControl1).OnButtonClick += new MyControl1.MyControlEventHandler(Pane1_OnButtonClick);
        UIIsReady = true;
    }

有错误

  

无法将类型'System.Windows.Forms.Control'隐式转换为'object'

代码:

(wfh.Child as MyControl1).OnButtonClick += new MyControl1.MyControlEventHandler(Pane1_OnButtonClick);

如何纠正?

1 个答案:

答案 0 :(得分:0)

最后由我自己解决,我必须添加一个dll

  

System.Windows.Forms的

到WPF项目,但MSDN没有提到它。