【问题标题】:Adding ToolBoxTab and ToolBoxItems in Visual Studio through an Add-In通过加载项在 Visual Studio 中添加 ToolBoxTab 和 ToolBoxItem
【发布时间】:2012-06-22 06:46:54
【问题描述】:

我通过覆盖基本控件创建了自己的控件类 即

[ToolboxData("<{0}:TextBox runat=server></{0}:TextBox>")]
public class MyTextBox:System.Web.UI.WebControls.TextBox
{
     public string myProperty {get;set;}
}

现在为了方便使用,我所做的就是在 Visual Studio 的 ToolBox 窗口中添加这些被覆盖的控件。

为此,我只需这样做。

  1. 通过右键单击“添加选项卡”在工具箱窗口中添加一个新选项卡
  2. 然后我执行“选择项目”(右键单击)并指向我的控件类的 dll。

我已覆盖的所有控件,即 TextBox、Button、Label 都以新名称和图标出现在那里。我所要做的就是拖动它们并使用它们。

现在,有没有办法让我的控件自动加载?我的意思是我不想做上面提到的两个步骤。

看看这就是我所做的。

  1. 添加了一个加载项并在其 Exec 中执行此操作

    public void Exec(string commandName, vsCommandExecOption executeOption, ref object varIn, ref object varOut, ref bool handled)
        {
            handled = false;
            if(executeOption == vsCommandExecOption.vsCommandExecOptionDoDefault)
            {
                if(commandName == "testAddin.Connect.testAddin")
                {
                    handled = true;
                    ToolBox tlBox = _applicationObject.ToolWindows.ToolBox;
                    ToolBoxTab tlBoxTab = null;
                    tlBoxTab = tlBox.ToolBoxTabs.Add("Test Controls");
    
    
                    tlBoxTab.Activate();
                    tlBoxTab.ToolBoxItems.Add("TestControls", @"C:\testLib.dll", vsToolBoxItemFormat.vsToolBoxItemFormatDotNETComponent);
    
           /////
             }
    

...但什么也没发生。 “测试控制”选项卡在那里,但没有控制。当我尝试做同样的事情时 System.Configuration.Install.dll(在 [root]/Windows/Microsoft.Net/Framework/[dotnetVersion]/) 文件夹中找到).. 控件被完美加载..但不是当我的自定义控件 dll 被指向时。

请帮助我。我想在每次 IDE 启动时添加这些控件(如 Telerik 控件)。 我是 Visual Studio 的这种可扩展性项目类型的新手..

请帮忙....

【问题讨论】:

标签: c# asp.net visual-studio-2010 webforms visual-studio-addins


【解决方案1】:

试试Visual Studio Toolbox Manager。我有自己的 VS2010 更新版本(VS2010 的 DTE 是“VisualStudio.DTE.10.0”)。

【讨论】:

    【解决方案2】:

    由于您要使用安装程序部署控件,我建议使用 Toolbox Controls Installer,它随 Visual Studio SDK 一起提供,可以轻松集成到 Wix 中;通过这种方式,您可以创作您的 Wix 设置项目,包含您的程序集,并仅引用上述自定义操作以进行工具箱注册。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-05-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-10-12
      相关资源
      最近更新 更多