Visual Studio工具箱扩展 - 单个项目中的多个组 [英] Visual Studio Toolbox Extention - Multiple Groups in a single project

查看:90
本文介绍了Visual Studio工具箱扩展 - 单个项目中的多个组的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试为Visual Studio 2013创建一个Toolbox exension。我安装了SDK并创建了一个Extensibility - Windows Forms Toolbox Control项目。



在这个项目中我有多组控件,每个组都驻留在一个单独的命名空间中,每个控件都有自己特定的[ProvideToolboxControl(GROUPNAME,false)]标签。



我编译项目并安装扩展程序,我的所有控件都添加到工具箱中,但不是在定义的组中看到它们,而是将它们全部加在一起(最后一组定义)。



打开.pkgdef文件时,我看到以下内容。该属性不是添加每个特定控件,而是一遍又一遍地添加整个项目,使用最后一行来确定工具箱名称。



[$ RootKey $ \ ToolboxControlsInstaller \DEFAULT_NAMESPACE Version = 1.0.0.1,Culture = neutral,PublicKeyToken = null]

@ =GROUP_A

Codebase=$ PackageFolder $ \ DLL_NAME

[$ RootKey $ \ToolboxControlsInstaller \DEFAULT_NAMESPACE Version = 1.0.0.1,Culture = neutral,PublicKeyToken = null]

@ =GROUP_A

Codebase=$ PackageFolder $ \ DLL_NAME

[$ RootKey $ \ToolboxControlsInstaller \DEFAULT_NAMESPACE Version = 1.0.0.1,Culture = neutral,PublicKeyToken = null]

@ =GROUP_A

Codebase=$ PackageFolder $ \ DLL_NAME

[$ RootKey $ \ToolboxControlsInstaller \DEFAULT_NAMESPACE版本= 1.0.0.1,Culture = neutral,PublicKeyToken = null]

@ =GROUP_B

Codebase=$ PackageFolder $ \ DLL_NAME

[$ RootKey $ \ToolboxControlsInstaller \DEFAULT_NAMESPACE Version = 1.0.0.1,Culture = neutral,PublicKeyToken = null]

@ =GROUP_B

Codebase =$ PackageFolder $ \ DLL_NAME

[$ RootKey $ \ToolboxControlsInstaller \DEFAULT_NAMESPACE Version = 1.0.0.1,Culture = neutral,PublicKeyToken = null]

@ =GROUP_B

Codebase=$ PackageFolder $ \ DLL_NAME

[$ RootKey $ \ToolboxControlsInstaller \DEFAULT_NAMESPACE Version = 1.0.0.1,Culture =中性,PublicKeyToken = null]

@ =GROUP_B

Codebase=$ PackageFolder $ \ DLL_NAME

[$ RootKey $ \ToolboxControlsInstaller \DEFAULT_NAMESPACE Version = 1.0.0.1,Culture = neutral,PublicKeyToken = null]

@ =GROUP_B

Codebase=$ PackageFolder $ \ DLL_NAME



问题:如何在单个项目中创建多个工具箱组?

解决方案

RootKey

\ ToolboxControlsInstaller \DEFAULT_NAMESPACE Version = 1.0.0.1,Culture = neutral,PublicKeyToken = null]

@ =GROUP_A

Codebase=
PackageFolder

I am trying to create a Toolbox exension for Visual Studio 2013. I installed the SDK and created a Extensibility - Windows Forms Toolbox Control project.

Inside this project I have multiple groups of controls, each group resides in a separate namespace and each control has their own specific [ProvideToolboxControl("GROUPNAME", false)] tag.

When I compile the project and install the extension, all my controls are added to the toolbox, but instead of seeing them in their defined groups they are all added together in one (the last group defined).

On opening the .pkgdef file, I see the following. Instead of adding each specific control, the attribute just adds the entire project over and over again, using the last line to determine toolbox name.

[$RootKey$\ToolboxControlsInstaller\DEFAULT_NAMESPACE Version=1.0.0.1, Culture=neutral, PublicKeyToken=null]
@="GROUP_A"
"Codebase"="$PackageFolder$\DLL_NAME"
[$RootKey$\ToolboxControlsInstaller\DEFAULT_NAMESPACE Version=1.0.0.1, Culture=neutral, PublicKeyToken=null]
@="GROUP_A"
"Codebase"="$PackageFolder$\DLL_NAME"
[$RootKey$\ToolboxControlsInstaller\DEFAULT_NAMESPACE Version=1.0.0.1, Culture=neutral, PublicKeyToken=null]
@="GROUP_A"
"Codebase"="$PackageFolder$\DLL_NAME"
[$RootKey$\ToolboxControlsInstaller\DEFAULT_NAMESPACE Version=1.0.0.1, Culture=neutral, PublicKeyToken=null]
@="GROUP_B"
"Codebase"="$PackageFolder$\DLL_NAME"
[$RootKey$\ToolboxControlsInstaller\DEFAULT_NAMESPACE Version=1.0.0.1, Culture=neutral, PublicKeyToken=null]
@="GROUP_B"
"Codebase"="$PackageFolder$\DLL_NAME"
[$RootKey$\ToolboxControlsInstaller\DEFAULT_NAMESPACE Version=1.0.0.1, Culture=neutral, PublicKeyToken=null]
@="GROUP_B"
"Codebase"="$PackageFolder$\DLL_NAME"
[$RootKey$\ToolboxControlsInstaller\DEFAULT_NAMESPACE Version=1.0.0.1, Culture=neutral, PublicKeyToken=null]
@="GROUP_B"
"Codebase"="$PackageFolder$\DLL_NAME"
[$RootKey$\ToolboxControlsInstaller\DEFAULT_NAMESPACE Version=1.0.0.1, Culture=neutral, PublicKeyToken=null]
@="GROUP_B"
"Codebase"="$PackageFolder$\DLL_NAME"

Question: How do I create multiple Toolbox Groups in a single project?

解决方案

RootKey


\ToolboxControlsInstaller\DEFAULT_NAMESPACE Version=1.0.0.1, Culture=neutral, PublicKeyToken=null]
@="GROUP_A"
"Codebase"="


PackageFolder


这篇关于Visual Studio工具箱扩展 - 单个项目中的多个组的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆