addin就是一个插件,便于其他用户来扩展自己的功能

解决方案 »

  1.   

    这里有一个addin的例子:
    <AddIn name        = "Project Importer/Exporter"
           author      = "Mike Krueger"
           copyright   = "GPL"
           url         = "unknown"
           description = "imports/exports forgein project files"
           version     = "1.0.0"> <Runtime>
    <Import assembly="ICSharpCode.ProjectImporterExporter.dll"/>
    </Runtime>
    <Extension path = "/SharpDevelop/Workbench/MainMenu/File">
                    <MenuItem id = "ImportSeparator" insertafter="SaveAll" insertbefore="PrintSeparator" label = "-" />
                    <MenuItem id = "ImportProject"
      label = "${res:XML.MainMenu.FileMenu.ImportSolution}" 
      description = "${res:XML.MainMenu.FileMenu.ImportSolution.Description}"
                              class = "ICSharpCode.SharpDevelop.ProjectImportExporter.Commands.ImportProjectCommand" />
                    <MenuItem id = "ExportProject"
      label = "${res:XML.MainMenu.FileMenu.ExportSolution}" 
      description = "${res:XML.MainMenu.FileMenu.ExportSolution.Description}"
                              class = "ICSharpCode.SharpDevelop.ProjectImportExporter.Commands.ExportProjectCommand" />
    </Extension>
    </AddIn>
    其中Extension的path是什么path呀?
      

  2.   

    sharpdevelop的C#程序设计的典范。C#中大量使用了模式,他的程序具有很好的可维护,可复用,可扩张性,可移植性。他的核心就是设计模式,所以在看代码之前一定要看设计模式。这个程序中的很多功能块是直接可以被直接使用的,如zip模块(可以不是这个程序中的),textEditor模块也是单独可用的。
    sharpDevelop中程序的核心功能模块是add-in,就是插件,他是负责管理其它独立的功能模块中。实际上,sharpDevelop中很多功能都封装成模块。核心管理程序对所以模块的调用都是通过interface来实现的,就是说只要就实现了对应的interface,你也可以把你的模块加进行,楼上add-in配置文件正是对这样的模块进行描述的。
    界面的东西只要是用magicLibrary来实现的,对这方面的详细说明在codeprojct上有很多。我也正在研究,不对的地方不要见怪。
      

  3.   

    wolve(我是一个中专生):说得好,我觉得现在关于这个项目的说明文档太少了,我买了一本全面透视#Develop,但讲得太粗了,不知哪里有详细一点的资料,英文的也行。
      

  4.   

    同意 li_aiwu(小李子)
    我也对它那个设计器比较感兴趣,但是比较麻烦,什么DesignHost,DesignLoader...
    msdn解释的又不清楚
      

  5.   

    这里有个转换工具
    http://sourceforge.net/projects/sd-vsnetplugin
      

  6.   

    SharpDevelop的File菜单里面有一个Expot project,不知道为什么用不了。
      

  7.   

    谁知道Condition是起什么作用的?
      

  8.   

    有谁能帮我解释一下System.Configuration.ConfigurationSettings.GetConfig("AddInDirectories")的用法。