【问题标题】:How can I make a WinForms Form work as a DockableContent in AvalonDock?如何使 WinForms 表单在 AvalonDock 中作为 DockableContent 工作?
【发布时间】:2010-07-12 04:07:26
【问题描述】:

我可以使用 WinForms 控件,但不能使用整个表单:

        var foo = new DockableContent();
        foo.Title = "Foo";
        foo.Name = "FooName";


        var c = new WindowsAppFramework.RenderTargetUserControl();
        c.Dock = System.Windows.Forms.DockStyle.Fill;
        c.AutomaticUpdateFPS = 60;

        var host = new System.Windows.Forms.Integration.WindowsFormsHost();
        host.Child = c;

        foo.Content = host;
        foo.ShowAsDocument(dockManager);
        foo.Focus();

是否可以使用整个表单?我想在应用程序中使用现有的表单。

【问题讨论】:

    标签: c# wpf winforms winforms-interop avalondock


    【解决方案1】:

    您可以将表单变成子控件:

      var frm = new Form1();
      frm.TopLevel = false;
      frm.Visible = true;
      frm.FormBorderStyle = FormBorderStyle.None;
    

    这实际上将它变成了一个用户控件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多