我在表单中有一段有效的代码:
public class Form1 : System.Windows.Forms.Form
{
private void Form1_Load(object sender, System.EventArgs e)
{
port.Parent = this;
}
}
现在我改为WPF:
public partial class MainWindow : RibbonWindow
{
private void Btn_Click(object sender, RoutedEventArgs e)
{
port.Parent = this;
}
}
然后它给了我: “无法将类型'System.Windows.DependencyObject'隐式转换为'System.Windows.Forms.Control'”
有什么问题?
答案 0 :(得分:3)
您在一个应用程序中使用WPF和Windows窗体。您不能将Windows窗体窗口用作WPF窗口的父窗口。您应该使用WinForms窗口将Windows转换为WPF,或者在Windows窗体ElementHost控件中托管WPF元素。
答案 1 :(得分:1)
因为所有wpf控件都是DependencyObject的子类型,所以不能给父提供非DependencyObject实例,这就是问题所在。