Visual Studio 2010:在 VSPackage 工具窗口中使用 winforms 用户控件

发布于 2024-11-03 08:51:16 字数 145 浏览 1 评论 0原文

使用工具窗口创建简单的 VSPackage 时,将创建示例 WPF 用户控件并将其添加到工具窗口。 该用户控件必须是 WPF 的吗?我有一个 winforms 用户控件,当将其添加到工具窗口时,它不会显示。尝试在 WPF 中托管它,但没有成功。有没有标准的方法可以做到这一点?

when creating a simple VSPackage with a Tool Window a sample WPF user control is created and added to the Tool Window.
Must this user control be of WPF? i have a winforms user control and, when adding it to the tool window it's not getting displayed. tried hosting it in WPF with no success. is there any standard way of doing this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

写给空气的情书 2024-11-10 08:51:16

我遇到了同样的问题。搜索了很多。无法找到答案或样本。最后发布在msdn论坛上。得到了我的答案。以下是 msdn 论坛主题的链接

MSDN 论坛主题链接

ToolWindowPane 可用于托管 WPF 内容或 Winform 控件。

对于 Winform 控件,您只需重写 Window 属性 get,并将 Content 属性保留为空。

例如:

public MyToolWindow() :  base(null)
    {
        this.Caption = Resources.ToolWindowTitle;
        this.BitmapResourceID = 301;
        this.BitmapIndex = 1;
        control = new MyControl();
    }

     override public System.Windows.Forms.IWin32Window Window
    {
        get
        {
            return (System.Windows.Forms.IWin32Window)control;
        }
    }

I faced the same issue. Searched a lot. Was not able to find the answer or sample. Finally posted on msdn forum. Got my answer. Here is the link to the thread of msdn forum

MSDN Forum thread link

The ToolWindowPane can be used to host WPF content or a Winform control.

For a Winform control, you just need to override the Window property get, and leave the Content property null.

For example:

public MyToolWindow() :  base(null)
    {
        this.Caption = Resources.ToolWindowTitle;
        this.BitmapResourceID = 301;
        this.BitmapIndex = 1;
        control = new MyControl();
    }

     override public System.Windows.Forms.IWin32Window Window
    {
        get
        {
            return (System.Windows.Forms.IWin32Window)control;
        }
    }
深海蓝天 2024-11-10 08:51:16

我几乎可以肯定它也可以是 winform,而且我确信 MSDN 上有一个演示。有时间我看看能不能挖出来。

I'm almost certain it can be winforms too, and I'm sure there's a demo somewhere on MSDN. I'll see if I can dig it up sometime.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文