开发神器 SharpDevelop 的插件系统,很有学习的必要。

1.首先在 github 上下载源代码,确保编译运行无误。

2.在 AddIns/Misc 下添加 SharpDevelop 插件项目 x01.TestViewContent,然后添加 ICSharpCode.Core 和 ICSharpCode.SharpDevelop 引用,设置这两个引用的 Local Copy 为 false;在项目属性上选编译输出为  “..\..\..\..\AddIns\AddIns\Misc\TestViewContent\”,可参考其他插件。设置 TestViewContent.addin 的文件属性 Local copy 为 Always。

3.添加类 TestViewContent.cs, 内容如下:

 /**
* TestViewContent.cs (c) 2015 by x01
*/
using System;
using System.Windows.Forms;
using ICSharpCode.SharpDevelop.Gui; namespace x01.TestViewContent
{
/// <summary>
/// Description of TestViewContent.
/// </summary>
public class TestViewContent : AbstractViewContent
{
Control control; public override Control Control {
get {
return control;
}
} public TestViewContent() : base("Test")
{
Panel panel = new Panel();
panel.Dock = DockStyle.Fill; TextBox textbox = new TextBox();
textbox.Text = "Hello world!";
textbox.Dock = DockStyle.Fill;
textbox.Multiline = true;
textbox.Height = ; panel.Controls.Add(textbox); this.control = panel;
}
}
}

TestViewContent

4.添加类 TestCommand.cs,内容如下:

 /**
* TestCommand.cs (c) 2015 by x01
*/
using System;
using ICSharpCode.SharpDevelop;
using ICSharpCode.SharpDevelop.Gui; namespace x01.TestViewContent
{
/// <summary>
/// Description of TestCommand.
/// </summary>
public class TestCommand : AbstractMenuCommand
{
public override void Run()
{
WorkbenchSingleton.Workbench.ShowView(new TestViewContent());
}
}
}

TestCommand

5.修改 TestViewContent.addin 后的内容如下:

 <AddIn name        = "x01.TestViewContent"
author = "Administrator"
url = ""
description = "TODO: Put description here"> <Runtime>
<Import assembly = "x01.TestViewContent.dll"/>
</Runtime> <!-- Extend the SharpDevelop AddIn-Tree like this:
<Path name = ...>
<.../>
</Path>
-->
<Path name="/Workspace/Autostart">
<Class id="TestCommand"
class="x01.TestViewContent.TestCommand" />
</Path>
</AddIn>

关键部分是 15-18行。

6.编译生成该插件项目。OK!这时,你会惊奇的发现,不需重新编译整个 Solution,直接进入 bin 目录运行 SharpDevelop.exe 时,该插件已然可用。效果图如下:

x01.TestViewContent: 插件测试的更多相关文章

  1. eclipse hibernate 插件测试1

    今天先测试了hibernate tools 安装 在eclipse marketplace里面搜索 hibernate tools 就能找到 网上很多文章所说的使用 install new softw ...

  2. 运用MQTT-JMeter插件测试MQTT服务器性能

    今天我们介绍XMeter团队带来的新版MQTT-JMeter插件,您可以更为方便地添加MQTT连接.发布.订阅取样器,构造组合的应用场景,例如背景连接.多发少收.少发多收,计算消息转发时延等.利用该插 ...

  3. wp伪静态网页打开慢之提速方案1s内打开 wp的静态化插件测试

    自上篇文章,我做了伪静态话.可是伪静态访问还是php动态页面,还需要服务端分析如何处理,访问页面时会发现有一个漫长的等待响应的时间.这是打开速度在4s左右.而静态页面则是直接打开,不需要服务器操作,不 ...

  4. Jmeter使用Websocket插件测试SingalR,外加还有阿里云PTS的Jmeter原生测试爬坑日志。

    题外话:距离我的上一篇博客已经过去7年多了,我实在是个不务正业的程序员,遇到测试方面的东西总想分享一下,因为可用的资料实在太少了(包括国外的资料). 本人不喜欢授人以鱼,所以不会直接给出问题和解决方案 ...

  5. Open Live Writer 代码插入插件测试

    #-*-coding:utf-8-*- import urllib import json import sys import ssl ssl._create_default_https_contex ...

  6. 用AntRun插件测试Maven的生命周期

    在用AntRun插件之前,需要了解以下几个知识点: 1.Maven的生命周期,参考:http://www.cnblogs.com/EasonJim/p/6816340.html,主要是要知道生命周期里 ...

  7. 【源码解读】EOS测试插件:txn_test_gen_plugin.cpp

    本文内容本属于<[精解]EOS TPS 多维实测>的内容,但由于在编写时篇幅过长,所以我决定将这一部分单独成文撰写,以便于理解. 关键字:eos, txn_test_gen_plugin, ...

  8. [转]Eclipse插件开发之基础篇(3) 插件的测试与调试

    原文地址:http://www.cnblogs.com/liuzhuo/archive/2010/08/17/eclipse_plugin_1_1_2.html 1. 使用JUnit对插件进行测试 E ...

  9. [Tool] Open Live Writer 插件更新

    最新插件下载地址:Memento.OLW_V1.0.0.2.7z 零.历史更新记录 2016.11.24 1. 修正 cnblog 语法高亮中的 SQL.Perl 语法高亮异常 下载地址:Mement ...

随机推荐

  1. salesforce 零基础学习(五十三)多个文件生成一个zip文件(使用git上封装的代码)

    此篇参考git代码:https://github.com/pdalcol/Zippex 学习salesforce可以访问一个朋友的网站:https://www.xgeek.net 首先感谢git上提供 ...

  2. ASP.NET MVC5+EF6+EasyUI 后台管理系统(46)-工作流设计-设计分支

    系列目录 步骤设置完毕之后,就要设置好流转了,比如财务申请大于50000元(请假天数>5天)要总经理审批,否则财务审批之后就结束了. 设置分支没有任何关注点,我们把关注点都放在了用户的起草表单. ...

  3. 微软Power BI技术文章与资源目录

    下面是本博客原创的微软Power BI技术相关文章,对于部分转载文章和资源,会注明出处. 本博客将发布基于微软Power BI相关的基础入门文章,视频教程等资源,敬请关注. 个人建立的Power BI ...

  4. 一个技术汪的开源梦 —— 基于 .Net Core 的公共组件之 Http 请求客户端

    一个技术汪的开源梦 —— 目录 想必大家在项目开发的时候应该都在程序中调用过自己内部的接口或者使用过第三方提供的接口,咱今天不讨论 REST ,最常用的请求应该就是 GET 和 POST 了,那下面开 ...

  5. ORACLE 11gR2 DG(Physical Standby)日常维护02

    环境:RHEL 6.5 + Oracle 11.2.0.4 三.监控DG的状态 3.1监控DG备库的状态 3.2监控主库传输日志链路的状态 四.备库切换为snapshot standby 4.1备库切 ...

  6. css随笔记

    使用伪类写边框部分三角 右上角三角形 border-top:6px solid #c1ddf7 border-left:6px solid transparent 右下角三角形 border-bott ...

  7. Unity3D中常用的数据结构总结与分析

    来到周末,小匹夫终于有精力和时间来更新下博客了.前段时间小匹夫读过一份代码,对其中各种数据结构灵活的使用赞不绝口,同时也大大激发了小匹夫对各种数据结构进行梳理和总结的欲望.正好最近也拜读了若干大神的文 ...

  8. SharePoint2013 显示网站菜单中设计管理器功能

    当部署完SharePoint2013后,并创建了对应的网站集,就开始试图去按照企业VI(Visual Identity)来定制站点的布局.色彩.字体等等的页面元素.可是,在站点的设置菜单中,默认没有“ ...

  9. 「译」JUnit 5 系列:基础入门

    原文地址:http://blog.codefx.org/libraries/junit-5-basics/ 原文日期:25, Feb, 2016 译文首发:Linesh 的博客:JUnit 5 系列: ...

  10. 选择目录,选择文件夹的COM组件问题。在可以调用 OLE 之前,必须将当前线程设置为单线程单元(STA)模式。请确保您的 Main 函数带有 STAThreadAttribute 标记。 只有将调试器附加到该进程才会引发此异常。

    异常: 在可以调用 OLE 之前,必须将当前线程设置为单线程单元(STA)模式.请确保您的 Main 函数带有 STAThreadAttribute 标记. 只有将调试器附加到该进程才会引发此异常. ...