易截截图软件、单文件、免安装、纯绿色、仅160KB

[HTML编辑器]C#编写的HTML编辑器:原理篇

作者:光脚丫思考 时间:12/23/2009 1:51:00 PM
一开始就觉得HTML编辑器这玩意应该是很高深莫测的。随随便便就想整一个应该不是一件容易的事情。后来对WebBrowser控件有了一些了解,不过都是很肤浅的了解。只知道用这个控件就能够在自己的程序中搞一个WEB浏览器之类的东西,从来没有想过HTML编辑器也可以使用这个控件来实现。也就是说这个WebBrowser控件不仅仅能够用来显示HTML文档,而且也可以用来编辑HTML文档。当然了,这些功能微软已经都提供给我们了。所需要做的就是按照那个规则去编写自己的代码了。我想HTML编辑器的实现方式不应该只有这一种,只是咱不会就是了!^_^
先来看看我自己实现的这个小软件,界面如下图:

超级简单的小软件吧!
那个【文字下拉列表】是用来修改字体的,【加粗】按钮是用来将字体加粗,或者让其减肥的,【下划线】按钮则是为选中的文字加减下划线的。最后那个【显示源码】按钮主要是为了看看修改之前和修改之后的HTML源码都做了那些改变。其他就没什么了。
下方的那块大的空白区域,就是WebBrowser控件了,既是用来显示HTML文档,也是用来编辑HTML文档的,在这里只用作编辑器。
接着来看源代码吧……
默认情况下,WebBrowser并没有处于编辑模式,所以还不能对其文档进行编辑处理的。为了使其处于编辑状态,可以在窗体加载事件的方法中添加如下代码:
private void MainForm_Load(object sender, EventArgs e)
{
this.webBrowser.DocumentText = string.Empty;
this.webBrowser.Document.ExecCommand("EditMode", false, null);
this.webBrowser.Document.ExecCommand("LiveResize", false, null); }

特别注意那个绿粗线画的部分(EditMode),这是关键点。不过似乎也不要忽略了为DocumentText赋值,不要让这个值为null,否则的话连Document也null了,到时想要执行ExecCommand这个方法那是不成的。这点是在我编写代码的时候无意发现的,它给我异常了。
有了上面这段代码,然后就会发现WebBrowser可以进行编辑了,开始有点像TextBox了,能够输入文字之类的东西了。
至于如何从系统中获取所有的字体,并且将它添加到下拉列表中等等之类的代码就自己去看吧。接下来要看的是如何修改文档。先阅读下面的代码:
private void BoldButton_Click(object sender, EventArgs e)
{
this.webBrowser.Document.ExecCommand("Bold", false, null);
}
这段代码是那个【加粗】按钮的Click事件处理代码。其中


相关文档:

手把手教你C#读取XML文件

C#读取XML资料
一 C#读取XML资料
扩充标记语言XML(eXtensible Markup Language),是由W三C机关制订的。做为用以代替HTML语言的一种新式的标记语言,XML内部有着很多根本基准,XML乃是经过与这些相干基准地组合,应用于科学计算、电子出版、多媒体系体例作和电子商务的。C#作为一种新式的程序语言,是.Net构架的一个� ......

c#(asp.net) updatepanel 局部刷新实例收藏

1
<asp:UpdatePanelID="UpdatePanel1"
        UpdateMode="Conditional"
        runat="server">
    <ContentTemplate>
        <asp:Button ID="Button1"
      ......

C# 连接sql数据库对 access,excel导入导出操作


 
一、SQL SERVER 和ACCESS的数据导入导出
常规的数据导入导出:
使用DTS向导迁移你的Access数据到SQL Server,你可以使用这些步骤:
  ○1在SQL SERVER企业管理器中的Tools(工具)菜单上,选择Data Transformation
  ○2Services(数据转换服务),然后选择  czdImport Data(导入数据)。
  � ......

JavaScript HTML DOM 对象

除了内置的 JavaScript 对象以外,你还可以使用 JavaScript 访问并处理所有的 HTML DOM 对象。
更多 JavaScript 对象
点击以下链接,可以获得以下对象的更多信息,包括它们的集合、属性、方法以及事件。
对象描述
Window
JavaScript 层级中的顶层对象。Windows 对象会呈现 (represent) 一个浏览器窗口。每当 <body& ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号