日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

WinForm邮件内容编辑器的简单实现

發布時間:2023/12/20 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 WinForm邮件内容编辑器的简单实现 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1、概述
????? 在WinForm開發中,您可能會碰到發送郵件時內容編輯的問題,大部分開發人員第一個想法是希望將 WinForm中的內容編輯器做到和.NET

中類似FCK一樣。今天我們就來介紹下如何實現和FCK一樣的內容編輯器功能。

2、正文
?????郵件內容編輯器的問題,在網上搜索一下,碰到這個的問題的人還不少,大多數開發者參考的下面這篇文章中的內容:http://www.codeproject.com/cs/miscctrl/editor_in_windows_forms.asp且不說這篇文章中實現的方法的好壞。但里面包含的Microsoft.MSHTML.dll,動輒7M多,實在是讓人看了不舒服。又或是利用WindowsLive.Writer.Interop.Mshtml和WindowsLive.Writer.Mshtml兩個組件來實現,維護起來相當麻煩,代碼就更不好看懂了。今天我向大家介紹一種新的內容編輯器的實現,徹底解決上述的問題,總大小不過幾百KB。

?????首先我們來分析下實現的原理。在上述那個例子中,它利用C#中的webBrowser控件和HTML交互達到的內容編輯器的效果,但它的實現卻是需要去完成單個單個的功能最后組合而成,例如,實現剪切的功能的核心代碼:

1?public?void?Cut()
2?{
3?????webBrowser1.Document.ExecCommand("Cut",?false,?null);
4?}
5?public?void?Bold()
6?{
7????webBrowser1.Document.ExecCommand("Bold",?false,?null);
8?}

這種方法是不是太過復雜?!而且維護起來也不方便。既然是webBrowser和HTML的交互實現原來,那為什么我們不直接做一個純HTML的郵件編輯器,然后再來和webBrowser交互呢?!這就是我今天要介紹方法的核心原理。下面我們來看看它的實現過程:
第一步:純HTML內容編輯器
其實這一步最簡單,基本上您在網上搜索HTML內容編輯器,就會有一大堆出現在您面前。既然是純HTML的,記住一定是雙擊既可以打開預覽的。如圖:

當然了,我們還是要寫一點必要的JS,便于獲取和設置從webBrowser控件傳出來的內容。

<script>
//獲取郵件內容
function?GetContent(){
????return?editor.html();
}
function?GetTitile(){
????return?document.getElementById('txttile').value;
}
function?GetFileUrl(){
????return?document.getElementById('txtfile').value;
}
function?SetTitile(arg){
????document.getElementById('txttile').value=arg;
}
function?SetContent(arg){
????editor.html(arg);}
</script>

第二步:內容交互
這里比較簡單,就是一個從webBrowser1中執行JS函數的核心代碼:

webBrowser1.Document.InvokeScript("SetContent", objArray);

其他部分,沒什么好說明的,直接看代碼吧。

View Code ?1?using?System;
?2?using?System.Collections.Generic;
?3?using?System.ComponentModel;
?4?using?System.Data;
?5?using?System.Drawing;
?6?using?System.Linq;
?7?using?System.Text;
?8?using?System.Windows.Forms;
?9?using?System.Security.Permissions;?//需加的
10?
11?namespace?EmailEdit
12?{
13?????[PermissionSet(SecurityAction.Demand,?Name?=?"FullTrust")]//需加的
14?????[System.Runtime.InteropServices.ComVisibleAttribute(true)]//需加的?
15?????public?partial?class?SendEmail?:?Form
16?????{
17?????????public?SendEmail()
18?????????{
19?????????????InitializeComponent();
20?????????}
21?
22?????????private?void?SendEmail_Load(object?sender,?EventArgs?e)
23?????????{
24?????????????webBrowser1.Navigate(Application.StartupPath?+?"/edit/editemail.html");
25?????????}
26?
27?????????//獲取郵件信息
28?????????private?void?button1_Click(object?sender,?EventArgs?e)
29?????????{
30?????????????string?strtitle?=?webBrowser1.Document.InvokeScript("GetTitile").ToString();
31?????????????string?strfile?=?webBrowser1.Document.InvokeScript("GetFileUrl").ToString();
32?????????????string?strcontent?=?webBrowser1.Document.InvokeScript("GetContent").ToString();
33?????????????MessageBox.Show("郵件的標題是:"?+?strtitle?+?"\n"?+?"附件:"?+?strfile?+?"\n"?+?"內容:"?+?strcontent);
34?????????}
35?
36?????????//設置郵件信息?
37?????????private?void?webBrowser1_DocumentCompleted(object?sender,?WebBrowserDocumentCompletedEventArgs?e)
38?????????{
39?????????????//郵件標題
40?????????????string?strtitle?=?"這是標題";
41?????????????Object[]?objArray?=?new?Object[1];
42?????????????objArray[0]?=?(Object)strtitle;
43?????????????webBrowser1.Document.InvokeScript("SetTitile",?objArray);
44?
45?????????????//郵件內容
46?????????????string?name?=?@"<font?color=""#FF0000""><h1>hello?world</h1></font>!sendry?lee.";
47?????????????objArray?=?new?Object[1];
48?????????????objArray[0]?=?(Object)name;
49?????????????webBrowser1.Document.InvokeScript("SetContent",?objArray);
50?????????}
51?????}
52?}

?第三步:運行
看實現的效果和圖片吧:

????? 如果對您有幫助別忘了分享給其他人,感謝您的閱讀!

?

轉載于:https://www.cnblogs.com/sendrylee/archive/2012/05/24/WinForm%E9%82%AE%E4%BB%B6%E5%86%85%E5%AE%B9%E7%BC%96%E8%BE%91%E5%99%A8.html

總結

以上是生活随笔為你收集整理的WinForm邮件内容编辑器的简单实现的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 精品一卡二卡三卡 | 欧美高清精品一区二区 | 亚洲综合五月 | 小说肉肉视频 | 国产精品地址 | 日本国产一区二区 | 插我一区二区在线观看 | 国产精品久久久久久久久久久不卡 | av免费观看网址 | 成片免费观看视频 | 日韩一区免费视频 | 牛av在线| 情侣黄网站免费看 | 福利一区在线 | 欧美色图激情小说 | 色婷婷av一区二区三区gif | 日韩欧美在线视频免费观看 | 色婷婷狠狠18禁久久 | 中文人妻一区二区三区 | 欧美亚洲伦理 | 欧美日韩一级黄色片 | 成人av网站在线播放 | 国产区免费 | 91精品国产入口 | 日本三级大片 | 婷婷爱五月| 男人添女人囗交视频 | 91草草草| 日本成人在线网站 | 处破痛哭a√18成年片免费 | 成年在线观看 | 美国黄色a级片 | 偷看洗澡一二三区美女 | 亚洲日本国产精品 | 8x8ⅹ国产精品一区二区 | www黄色在线观看 | 91网站永久免费看nba视频 | 91精品国产综合久久福利 | 日韩欧美一级二级 | 日本精品久久 | 日韩毛片高清在线播放 | re久久| 祥仔视觉av| 久久国产精品久久久久久电车 | 女生脱裤子让男生捅 | 国产真人无码作爱视频免费 | 9色视频 | 黄色免费在线观看网站 | 在线观看理论片 | 亚洲成人免费影院 | 美足av电影 | 欧美黑人一级片 | 在线日韩精品视频 | 欧美午夜精品 | 日本高清不卡在线 | www视频免费在线观看 | 亚洲一级片在线观看 | 亚洲成人av一区二区 | 精品人妻无码一区二区色欲产成人 | 男女无套免费视频网站动漫 | 日日噜噜噜噜久久久精品毛片 | 日美女网站 | 九色在线播放 | 制服丝袜在线视频 | 欧美性天天 | 在线观看国产黄色 | 超碰在97| 国产一区二区视频免费在线观看 | 超碰日韩| 福利姬在线观看 | 日本aa大片 | 男女污网站 | 黄色小视频免费看 | 在线视频在线观看 | 日本在线视频播放 | 久草视频免费在线播放 | 四川丰满少妇被弄到高潮 | 欧美激情一区二区视频 | 男女激情在线观看 | 草草影院发布页 | 亚洲国产欧美日韩 | 手机免费看av片 | 无码人妻精品一区二区三区温州 | 91免费观看视频 | 一本色道久久亚洲综合精品蜜桃 | 婷婷综合在线视频 | 日本三级一区 | 在线观看国产福利 | 久久视频免费看 | 91porny在线| 四虎av网址| 国产成人在线免费观看 | 亚洲高清欧美 | 色七七网站 | bangbros性欧美18| 免费在线看黄色片 | 911精品| 黑人添美女bbb添高潮了 | 日韩欧美一区二区三区在线 |