TEST

   1 using System;
   2 using System.Collections.Generic;
   3 using System.Linq;
   4 using System.Text;
   5 using System.Windows.Forms;
   6 using System.Drawing;
   7 using mshtml;
   8 
   9 //参考
  10 
  11 //http://code.google.com/p/msit88-gold-coast/source/browse/sandbox/GoldCoastTestSolution/HtmlEditor/DocumentEx.cs
  12 
  13 namespace WebBrowserCtrl
  14 {
  15     class DHTMLClass
  16     {
  17         public DHTMLClass( )
  18         {
  19             webBrowser1 = null;
  20         }
  21 
  22         public WebBrowser webBrowser1;
  23 
  24       
  25         #region javascript语法 在CSharp中的写法
  26         /* 
  27          更多的要参考 DHTML 手册.chm
  28          @javascript
  29         function AddLink()
  30         {
  31             //identify selected text
  32             var sText = document.selection.createRange();
  33             if (sText.text != "")
  34             {
  35                 //create link
  36                 document.execCommand("CreateLink");
  37                 //change the color to indicate success
  38                 if (sText.parentElement().tagName == "A")
  39                 {
  40                     sText.execCommand("ForeColor", false, "#FF0033");
  41                 }
  42             }
  43             else
  44             {
  45                 alert("Please select some text!");
  46             }
  47         }
  48          #1
  49          C# 这么写
  50          @javascript
  51              document.execCommand("CreateLink");
  52          @C#
  53              webbrowser1.Document.ExecCommand("CreateLink", false, null);
  54 
  55         #2
  56         @javascript
  57             vCmdValue = object.queryCommandValue(sCmdID)
  58         @C#
  59             IHTMLDocument2 document2 = (IHTMLDocument2)webBrowser1.Document.DomDocument;
  60             bool b1 = (bool)document2.queryCommandEnabled("CreateLink");
  61             bool b2= (bool)document2.queryCommandIndeterm("CreateLink");
  62             bool b3 = (bool)document2.queryCommandState("CreateLink");
  63             bool b4 = (bool)document2.queryCommandSupported("CreateLink");
  64             string s =  document2.queryCommandText("CreateLink");
  65             object obj = (object)document2.queryCommandValue("CreateLink");
  66 
  67             
  68         #3
  69         @javascript
  70             range = selection.createRange()
  71         @C#
  72             IHTMLDocument2 document2 = (IHTMLDocument2)webBrowser.Document.DomDocument;
  73             IHTMLTxtRange range = (IHTMLTxtRange)document2.selection.createRange();
  74         
  75         #
  76         @javascript
  77             
  78         @C#
  79 
  80         #
  81         @javascript
  82             
  83         @C#
  84 
  85         #
  86         @javascript
  87             
  88         @C#
  89 
  90 
  91 
  92 
  93 
  94 
  95 
  96 
  97 
  98 
  99 
 100 
 101 
 102 
 103 
 104 
 105 
 106 
 107 
 108 
 109 
 110 
 111 
 112 
 113 
 114 
 115 
 116        
 117    */
 118         #endregion
 119 
 120 
 121 
 122         /// <summary>               
 123         ///"document" 就是 "webBrowser.Document"
 124         ///获取一个 HtmlDocument,它表示当前显示在 WebBrowser 控件中的网页。
 125         /// </summary>
 126         public HtmlDocument document
 127         {
 128             get{
 129                 return webBrowser1.Document;
 130             }
 131         }
 132 
 133         /// <summary>
 134         /// "document2" 就是 "(IHTMLDocument2)webBrowser.Document.DomDocument"
 135         /// 获取此 HtmlDocument 的非托管接口指针
 136         /// </summary>
 137         public IHTMLDocument2 document2
 138         {
 139            get{
 140               try
 141               {
 142                   return (IHTMLDocument2)webBrowser1.Document.DomDocument;
 143               }
 144               catch (System.Exception ex)
 145               {
 146                   return null;
 147               }
 148            }
 149         }
 150 
 151         /// <summary>
 152         ///当前选中的对象
 153         /// TxtRange =
 154         /// IHTMLDocument2 document2 = (IHTMLDocument2)webBrowser.Document.DomDocument;
 155         /// IHTMLTxtRange range = (IHTMLTxtRange)document2.selection.createRange();
 156         /// </summary>
 157         public IHTMLTxtRange TxtRange
 158         {
 159             get{
 160                 //try
 161                 //{
 162                     return (IHTMLTxtRange)document2.selection.createRange();
 163                 }
 164                 //catch (System.Exception ex)
 165                 //{
 166                 //    //return null;
 167                 //}
 168             //}
 169         }
 170 
 171         #region DesignMode
 172         /// <summary>
 173         /// 设置焦点
 174         /// </summary>
 175         public void SetFocus()
 176         {
 177             document.Focus();
 178         }
 179         /// <summary>
 180         /// 是否设置焦点
 181         /// </summary>
 182         /// <returns></returns>
 183         public bool focused()
 184         {
 185             return document.Focused;
 186         }
 187 
 188         /// <summary>
 189         /// 设置 编辑模式
 190         /// </summary>
 191         public void SetEditMode()
 192         {
 193             document.ExecCommand("EditMode", false, null);
 194         }
 195 
 196         /// <summary>
 197         /// 获得 编辑模式
 198         /// </summary>
 199         /// <returns></returns>
 200         public bool GetEditMode()
 201         {
 202             return (bool)document2.queryCommandValue("EditMode");
 203         }
 204 
 205         /// <summary>
 206         /// 设置 浏览模式
 207         /// </summary>
 208         public void SetBrowseMode()
 209         {
 210             document.ExecCommand("BrowseMode", false, null);
 211         }
 212 
 213         /// <summary>
 214         /// 获得 浏览模式
 215         /// </summary>
 216         /// <returns></returns>
 217         public bool GetBrowseMode()
 218         {
 219             return (bool)document2.queryCommandValue("BrowseMode");
 220         }
 221 
 222         #endregion
 223 
 224         #region 基本编辑操作
 225         #region 撤销 重做 复制 剪切 ...
 226         ///bSuccess = object.execCommand(sCommand [, bUserInterface] [, vValue])
 227 
 228         /// <summary>
 229         /// 撤销
 230         /// </summary>
 231         public void Undo()
 232         {
 233             document.ExecCommand("Undo", false, null);
 234           
 235         }
 236  
 237         /// <summary>
 238         /// 重做  
 239         /// </summary>
 240         public void Redo()
 241         {
 242             document.ExecCommand("Redo", false, null);
 243         }
 244 
 245         /// <summary>
 246         /// 将当前选中区复制到剪贴板。 
 247         /// </summary>
 248         public void Copy()
 249         {
 250             document.ExecCommand("Copy", false, null);
 251         }
 252 
 253         /// <summary>
 254         /// 将当前选中区复制到剪贴板并删除之。 
 255         /// </summary> 
 256         public void Cut()
 257         {
 258             document.ExecCommand("Cut", false, null);
 259         }
 260 
 261         /// <summary>
 262         /// 用剪贴板内容覆盖当前选中区。  
 263         /// </summary>
 264         public void Paste()
 265         {
 266             document.ExecCommand("Paste", false, null);
 267         }
 268 
 269         /// <summary>
 270         /// 删除当前选中区
 271         /// </summary>
 272         public void Delete()
 273         {
 274             document.ExecCommand("Delete", false, null);
 275         }
 276 
 277         /// <summary>
 278         /// 选中整个文档。
 279         /// </summary>
 280         public void SelectAll()
 281         {
 282             document.ExecCommand("SelectAll", false, null);
 283         }
 284 
 285         /// <summary>
 286         /// 清除当前选中区的选中状态。
 287         /// </summary>
 288         public void DeSelect()
 289         {
 290             document.ExecCommand("Unselect", false, null);
 291         }
 292 
 293         #region Can 编辑?
 294         #region queryCommandEnabled
 295         //bEnabled = object.queryCommandEnabled(sCmdID)
 296         #endregion
 297         /// <summary>
 298         /// 是否可以执行Undo
 299         /// </summary>
 300         /// <returns></returns>
 301         public bool CanUndo()
 302         {
 303             return document2.queryCommandEnabled("Undo");
 304         }
 305 
 306         /// <summary>
 307         /// 是否可以执行Redo
 308         /// </summary>
 309         /// <returns></returns>
 310         public bool CanRedo()
 311         {
 312             return document2.queryCommandEnabled("Redo");
 313         }
 314 
 315         /// <summary>
 316         /// 是否可以执行Copy
 317         /// </summary>
 318         /// <returns></returns>
 319         public bool CanCopy()
 320         {
 321             return document2.queryCommandEnabled("Copy");
 322         }
 323 
 324         /// <summary>
 325         /// 是否可以执行Cut
 326         /// </summary>
 327         /// <returns></returns>
 328         public bool CanCut()
 329         {
 330             return document2.queryCommandEnabled("Cut");
 331         }
 332 
 333         /// <summary>
 334         /// 是否可以执行Paste
 335         /// </summary>
 336         /// <returns></returns>
 337         public bool CanPaste()
 338         {
 339             return document2.queryCommandEnabled("Paste");
 340         }
 341 
 342         /// <summary>
 343         /// 是否可以执行Delete
 344         /// </summary>
 345         /// <returns></returns>
 346         public bool CanDelete()
 347         {
 348             return document2.queryCommandEnabled("Delete");
 349         }
 350 
 351         #endregion
 352         #endregion
 353         #endregion
 354 
 355         #region SelStart http://www.cnblogs.com/xe2011/p/3463124.html
 356         //这里的变量要单独存在 如果使用本类中的全局变量TxtRange
 357         //则在WebbrowserControl中
 358         //无法获得getSelectionStart()的值和
 359         //setSelection 无法选择
 360 
 361         #region 获得webBrowser光标所在的位置
 362         /*
 363         function getSelectionStart(){
 364              var range=document.selection.createRange();
 365              range.moveStart('character', -document.body.innerText.length);
 366              return range.text.length;
 367         }
 368         */
 369 
 370         /// <summary>
 371         /// 获得webBrowser光标所在的位置
 372         /// </summary>
 373         /// <returns></returns>
 374         public int __GetSelectionStart()
 375         {
 376             try
 377             {
 378                 IHTMLDocument2 document2 = (IHTMLDocument2)webBrowser1.Document.DomDocument;
 379                 IHTMLTxtRange TxtRange = (IHTMLTxtRange)document2.selection.createRange();
 380                 TxtRange.moveStart("character", -document2.body.innerText.Length);
 381                 return TxtRange.text.Length;
 382             }
 383             catch
 384             {
 385                 //当光标在0这个位置使用功能引起错误
 386                 return 0;
 387             }
 388         }
 389 
 390         /// <summary>
 391         /// 获得webBrowser光标所在的准确位置
 392         /// 当有文本被选中时返回 的位置应为当 getSelectionStart() - getSelectionLength()
 393         /// 由于换行符导致结果不正确
 394         /// </summary>
 395         /// <returns></returns>
 396         public int getSelectionStart()
 397         {
 398             int SelStart = __GetSelectionStart();
 399             int SelLength = getSelectionLength();
 400             if (SelLength > 0)
 401                 return SelStart - SelLength;
 402             else
 403 
 404                 return SelStart;
 405         }
 406 
 407         #endregion
 408 
 409         #region 获得webBrowser选中的文本长度
 410         /*
 411         function getSelectionLength()
 412         {
 413             return document.selection.createRange().text.length;
 414         }
 415          */
 416         /// <summary>
 417         /// 获得webBrowser选中的文本长度
 418         /// </summary>
 419         /// <returns></returns>
 420         public int getSelectionLength()
 421         {
 422             try
 423             {
 424                 IHTMLDocument2 document = (IHTMLDocument2)webBrowser1.Document.DomDocument;
 425                 IHTMLTxtRange TxtRange = (IHTMLTxtRange)document.selection.createRange();
 426                 return TxtRange.text.Length;
 427                 //return TxtRange.text.Length;
 428             }
 429             catch (System.Exception ex)
 430             {
 431                 return 0;
 432                 //当光标在0这个位置使用功能引起错误
 433             }
 434         }
 435         #endregion
 436 
 437         #region  设置webBrowser光标的位置
 438         //请看这个 选中指定的字符串 设置length=0,设置start的值就是光标的所在的位置
 439 
 440         //    webBrowser1.Document.Focus();
 441         //    setSelection(webBrowser1, 6, 0);
 442         #endregion
 443 
 444         #region 选中webBrowser指定的字符串
 445         /*     
 446         function setSelection(start,length){
 447             var range=document.selection.createRange();
 448             range.collapse(true);
 449             range.moveStart('character', start);
 450             range.moveEnd('character', length);
 451             range.select();
 452         }
 453         */
 454         /// <summary>
 455         /// 设置webBrowser光标的位置
 456         /// </summary>
 457         /// <param name="start"></param>
 458         /// <param name="length"></param>
 459         public void setSelection(int start, int length)
 460         {
 461             IHTMLDocument2 document2 = (IHTMLDocument2)webBrowser1.Document.DomDocument;
 462             IHTMLTxtRange TxtRange = (IHTMLTxtRange)document2.selection.createRange();
 463             TxtRange.collapse(true);
 464             TxtRange.move("textedit", -1);  //光标移动到第0位处
 465             TxtRange.moveStart("character", start);
 466             TxtRange.moveEnd("character", length);
 467             TxtRange.select();
 468         }
 469         #endregion
 470 
 471 
 472         #endregion
 473 
 474         #region 操作选中的字符串对象
 475 
 476         /// <summary>
 477         /// 获得 webBrowser选中的字符串
 478         /// </summary>
 479         /// <returns></returns>
 480         public string GetSelText()
 481         {
 482             return TxtRange.text;
 483         }
 484 
 485         /// <summary>
 486         /// 设置 webBrowser选中的字符串
 487         /// </summary>
 488         /// <returns></returns>
 489         public void SetSelText(string text)
 490         {
 491             TxtRange.text = text;
 492         }
 493 
 494         /// <summary>
 495         /// 获得webBrowser选中的字符的HTML格式字符串
 496         /// </summary>
 497         /// <returns></returns>
 498         public string GetSelHtml()
 499         {
 500             return TxtRange.htmlText;
 501         }
 502 
 503         /// <summary>
 504         /// 设置 webBrowser选中的字符的HTML格式字符串
 505         /// </summary>
 506         /// <returns></returns>
 507         public void SetSelHtml(string html)
 508         {
 509             PasteHtml(html);
 510         }
 511 
 512         /// <summary>
 513         ///  获得webBrowser的全部字符串
 514         /// </summary>
 515         /// <returns></returns>
 516         public string GetText()
 517         {
 518             return document.Body.InnerText;
 519         }
 520 
 521         /// <summary>
 522         ///  设置 webBrowser的全部字符串
 523         /// </summary>
 524         /// <returns></returns>
 525         public void SetText(string text)
 526         {
 527             document.Body.InnerText = text;
 528         }
 529 
 530         /// <summary>
 531         ///  获得 webBrowser的全部HTML字符串
 532         /// </summary>
 533         /// <returns></returns>
 534         public string GetHtml()
 535         {
 536             try
 537             {
 538                 return document.Body.InnerHtml;
 539             }
 540             catch (System.Exception ex)
 541             {
 542                 return "";
 543             }
 544         }
 545         /// <summary>
 546         ///  设置 webBrowser的全部HTML字符串
 547         /// </summary>
 548         /// <returns></returns>
 549         public void SetHtml(string html)
 550         {
 551             document.Body.InnerHtml = html;
 552         }
 553 
 554         /// <summary>
 555         /// Webbrowser粘贴HTML功能
 556         /// </summary>
 557         /// <returns></returns>
 558         public void PasteHtml(string HtmlString)
 559         {
 560             if (webBrowser1.ReadyState == WebBrowserReadyState.Complete)
 561                    TxtRange.pasteHTML(HtmlString);
 562         }
 563         #endregion
 564 
 565         #region 文件档操作
 566         /// <summary>
 567         /// 返回文档是否修改了
 568         /// </summary>
 569         /// <returns></returns>
 570         public bool GetModify()
 571         {
 572             return true;
 573         }
 574 
 575         /// <summary>
 576         /// 设置文档的修改状态
 577         /// </summary>
 578         public void SetModify(bool bModify)
 579         {
 580 
 581         }
 582         /// <summary>
 583         /// 新建文档
 584         /// </summary>
 585         public void NewDocument()
 586         {
 587            
 588         }
 589 
 590        /// <summary>
 591         /// 打开文档
 592        /// </summary>
 593        /// <param name="fileName"></param>
 594         public void LoadFromFile(string fileName)
 595         {
 596 
 597         }
 598 
 599         /// <summary>
 600         /// 保存文档
 601         /// </summary>
 602         public void SaveToFile()
 603         {
 604             //this.ExecWB(OLECMDID.OLECMDID_SAVE);
 605         }
 606 
 607         /// <summary>
 608         /// 另存文档
 609         /// </summary>
 610         /// <param name="fileName"></param>
 611         public void SaveToFile(string fileName)
 612         {
 613 
 614         }
 615 
 616         /// <summary>
 617         /// 
 618         /// </summary>
 619         /// <param name="fileName1"></param>
 620         /// <param name="fileName2"></param>
 621         public void SaveToFile(string fileName1, string fileName2)
 622         {
 623 
 624         }
 625 
 626         /// <summary>
 627         /// 保存为HTML格式的文档
 628         /// </summary>
 629         /// <param name="fileName"></param>
 630         public void SaveToHtmlFormat(string fileName)
 631         {
 632 
 633         }
 634 
 635         /// <summary>
 636         /// 保存为Text格式的文档
 637         /// </summary>
 638         /// <param name="fileName"></param>
 639         public void SaveToMhtFormat(string fileName)
 640         {
 641 
 642         }
 643         /// <summary>
 644         /// 保存为Mht格式的文档
 645         /// </summary>
 646         /// <param name="fileName"></param>
 647         public void SaveToTextFormat(string fileName)
 648         {
 649 
 650         }
 651 
 652 
 653         #endregion
 654 
 655         #region 字体
 656 
 657         /// <summary>
 658         /// 设置 当前选中区的字体。
 659         /// </summary>
 660         /// <returns></returns>
 661         public void SetSelFontName(string fontName)
 662         {
 663             document.ExecCommand("FontName", false, fontName);
 664         }
 665         /// <summary>
 666         ///  获取 当前选中区的字体。
 667         /// </summary>
 668         /// <returns></returns>
 669         public string GetSelFontName()
 670         {
 671             //if (webBrowser.ReadyState == WebBrowserReadyState.Complete)
 672             return  document2.queryCommandValue("FontName") as string;
 673         }
 674 
 675         /// <summary>
 676         /// 设置 当前选中区的字体大小
 677         /// </summary>
 678         /// <returns></returns>
 679         public void SetSelFontSize(int fontSize)
 680         {
 681             document.ExecCommand("FontSize", false, fontSize);
 682         }
 683         
 684         /// <summary>
 685         /// 获得 当前选中区的字体大小
 686         /// </summary>
 687         /// <returns></returns>
 688         public int GetSelFontSize()
 689         {
 690             return (int)document2.queryCommandValue("FontSize");
 691         }
 692 
 693         #region ColorToHtml
 694         /// <summary>
 695         /// 颜色转换成HTML格式的颜色 
 696         /// </summary>
 697         /// <param name="color"></param>
 698         /// <returns>#FF0000</returns>
 699         private string ColorToHtmlColor(Color color)
 700         {
 701             return string.Format("#{0:X2}{1:X2}{2:X2}", color.R, color.G, color.B);
 702         }
 703         #endregion
 704 
 705         /// <summary>
 706         /// 设置 当前选中区的前景(文本)颜色
 707         /// </summary>
 708         /// <returns></returns>
 709         public void SetSelFontForeColor(Color color)
 710         {
 711             document.ExecCommand("ForeColor", false, ColorToHtmlColor(color));
 712         }
 713 
 714         /// <summary>
 715         /// 获得 当前选中区的前景(文本)颜色
 716         /// </summary>
 717         /// <returns></returns>
 718         public Color GetSelFontForeColor()
 719         {
 720             return (Color)document2.queryCommandValue("ForeColor");
 721         }
 722 
 723         /// <summary>
 724         /// 设置 当前选中区的背景颜色
 725         /// </summary>
 726         /// <returns></returns>
 727         public void SetSelFontBackColor(Color color)
 728         {
 729             document.ExecCommand("BackColor", false, ColorToHtmlColor(color));
 730         }
 731 
 732         /// <summary>
 733         /// 获得 当前选中区的背景颜色
 734         /// </summary>
 735         /// <returns></returns>
 736         public Color GetSelFontBackColor()
 737         {
 738             return (Color)document2.queryCommandValue("BackColor");
 739         }
 740 
 741 
 742         /// <summary>
 743         /// 设置 切换当前选中区的粗体显示与否。
 744         /// </summary>
 745         /// <returns></returns>
 746         public void SetSelFontStyleBold()
 747         {
 748             document.ExecCommand("Bold", false, null);
 749         }
 750 
 751         /// <summary>
 752         /// 获得 切换当前选中区的粗体显示与否。
 753         /// </summary>
 754         /// <returns></returns>
 755         public bool GetSelFontStyleBold()
 756         {
 757             return (bool)document2.queryCommandValue("Bold");
 758         }
 759 
 760         /// <summary>
 761         /// 设置 切换当前选中区斜体显示与否。
 762         /// </summary>
 763         /// <returns></returns>
 764         public void SetSelFontStyleItalic()
 765         {
 766             document.ExecCommand("Italic", false, null);
 767         }
 768 
 769         /// <summary>
 770         /// 获得 切换当前选中区斜体显示与否。
 771         /// </summary>
 772         /// <returns></returns>
 773         public bool GetSelFontStyleItalic()
 774         {
 775             return (bool)document2.queryCommandValue("Italic");
 776         }
 777 
 778         /// <summary>
 779         /// 设置 切换当前选中区的下划线显示与否。
 780         /// </summary>
 781         /// <returns></returns>
 782         public void SetSelFontStyleUnderline()
 783         {
 784             document.ExecCommand("Underline", false, null);
 785         }
 786 
 787         /// <summary>
 788         /// 获得 切换当前选中区的下划线显示与否。
 789         /// </summary>
 790         /// <returns></returns>
 791         public bool GetSelFontStyleUnderline()
 792         {
 793             return (bool)document2.queryCommandValue("Underline");
 794         }
 795 
 796         /// <summary>
 797         /// 设置 选中的字体 删除线
 798         /// </summary>
 799         /// <returns></returns>
 800         public void SetSelFontStyleStrikeThrough()
 801         {
 802             document.ExecCommand("StrikeThrough", false, null);
 803         }
 804 
 805         /// <summary>
 806         /// 获得 选中的字体 删除线
 807         /// </summary>
 808         /// <returns></returns>
 809         public bool GetSelFontStyleStrikeThrough()
 810         {
 811             return (bool)document2.queryCommandValue("StrikeThrough");
 812         }
 813 
 814         /// <summary>
 815         /// 设置 选中的字体 格式
 816         /// </summary>
 817         /// <returns></returns>
 818         public void SetSelFontFormat()
 819         {
 820             document.ExecCommand("RemoveFormat", false, null);
 821         }
 822 
 823         ///// <summary>
 824         ///// 获得 选中的字体 格式
 825         ///// </summary>
 826         ///// <returns></returns>
 827         public bool GetSetSelFontFormat()
 828         {
 829             return (bool)document2.queryCommandValue("RemoveFormat");
 830         }
 831 
 832 
 833         /// <summary>
 834         /// 获取选中部分的标签。
 835         /// </summary>
 836         /// <returns>标签。</returns>
 837         public  string GetSelectionTag()
 838         {
 839             return (string)document2.queryCommandValue("FormatBlock");
 840         }
 841 
 842         /// <summary>
 843         /// 设置选中部分的标签。
 844         /// </summary>
 845         /// <param name="value">标签。</param>
 846         public  void SetSelectionTag(string value)
 847         {
 848             if (value == null)
 849             {
 850                 document.ExecCommand("FormatBlock", false, "<P>");
 851                 document.ExecCommand("RemoveParaFormat", false, null);
 852                 return;
 853             }
 854             try
 855             {
 856                 document.ExecCommand("FormatBlock", false, "<" + value + ">");
 857             }
 858             catch
 859             {
 860                 //document.SetSelectedHtml(String.Format("<{0}>{1}</{0}>", value, document.GetSelectedHtml()));
 861             }
 862         }
 863 
 864 
 865         /// <summary>
 866         /// 设置 选中的字体 左对齐
 867         /// </summary>
 868         /// <returns></returns>
 869         public void SetSelJustifyLeft()
 870         {
 871             document.ExecCommand("JustifyLeft", false, null);
 872         }
 873 
 874         /// <summary>
 875         /// 获得 选中的字体 左对齐
 876         /// </summary>
 877         /// <returns></returns>
 878         public bool GetSelJustifyLeft()
 879         {
 880             return (bool)document2.queryCommandValue("JustifyLeft");
 881         }
 882 
 883         /// <summary>
 884         /// 设置 选中的字体 中间对齐
 885         /// </summary>
 886         /// <returns></returns>
 887         public void SetSelJustifyCenter()
 888         {
 889             document.ExecCommand("JustifyCenter", false, null);
 890         }
 891 
 892         /// <summary>
 893         /// 获得 选中的字体 中间对齐
 894         /// </summary>
 895         /// <returns></returns>
 896         public bool GetSelJustifyCenter()
 897         {
 898             return (bool)document2.queryCommandValue("JustifyCenter");
 899         }
 900 
 901         /// <summary>
 902         /// 设置 选中的字体 右边对齐
 903         /// </summary>
 904         /// <returns></returns>
 905         public void SetSelJustifyRight()
 906         {
 907             document.ExecCommand("JustifyRight", false, null);
 908         }
 909 
 910         /// <summary>
 911         /// 获得 选中的字体 右边对齐
 912         /// </summary>
 913         /// <returns></returns>
 914         public bool GetSelJustifyRight()
 915         {
 916             return (bool)document2.queryCommandValue("JustifyRight");
 917         }
 918 
 919         /// <summary>
 920         /// 设置 选中的字体 两边对齐
 921         /// </summary>
 922         /// <returns></returns>
 923         public void SetSelJustifyFull()
 924         {
 925             document.ExecCommand("JustifyFull", false, null);
 926         }
 927 
 928         /// <summary>
 929         /// 获得 选中的字体 两边对齐
 930         /// </summary>
 931         /// <returns></returns>
 932         public bool GetSelJustifyFull()
 933         {
 934             return (bool)document2.queryCommandValue("JustifyFull");
 935         }
 936 
 937 
 938         /// <summary>
 939         /// 设置 选中的字体 数字对齐
 940         /// </summary>
 941         /// <returns></returns>
 942         public void SetSelOrderedList()
 943         {
 944             document.ExecCommand("InsertOrderedList", false, null);
 945         }
 946 
 947         /// <summary>
 948         /// 获得 选中的字体 数字对齐
 949         /// </summary>
 950         /// <returns></returns>
 951         public bool GetSelOrderedList()
 952         {
 953             return (bool)document2.queryCommandValue("InsertOrderedList");
 954         }
 955 
 956         /// <summary>
 957         /// 设置 选中的字体 圆点对齐
 958         /// </summary>
 959         /// <returns></returns>
 960         public void SetSelUnorderedList()
 961         {
 962             document.ExecCommand("InsertUnorderedList", false, null);
 963         }
 964 
 965         /// <summary>
 966         /// 获得 选中的字体 圆点对齐
 967         /// </summary>
 968         /// <returns></returns>
 969         public bool GetSelUnorderedList()
 970         {
 971             return (bool)document2.queryCommandValue("InsertUnorderedList");
 972         }
 973 
 974         /// <summary>
 975         /// 设置 选中的字体 上标X2
 976         /// </summary>
 977         /// <returns></returns>
 978         public void SetSelSuperScript()
 979         {
 980             document.ExecCommand("SuperScript", false, null);
 981         }
 982 
 983         /// <summary>
 984         /// 获得 选中的字体 上标X2
 985         /// </summary>
 986         /// <returns></returns>
 987         public bool GetSelSuperScript()
 988         {
 989             return (bool)document2.queryCommandValue("SuperScript");
 990         }
 991 
 992         /// <summary>
 993         /// 设置 选中的字体 下标X2
 994         /// </summary>
 995         /// <returns></returns>
 996         public void SetSelSubScript()
 997         {
 998             document.ExecCommand("SubScript", false, null);
 999         }
1000 
1001         /// <summary>
1002         /// 获得 选中的字体 下标X2
1003         /// </summary>
1004         /// <returns></returns>
1005         public bool GetSelSubScript()
1006         {
1007             return (bool)document2.queryCommandValue("SubScript");
1008         }
1009 
1010         /// <summary>
1011         /// 设置 选中的字体 右缩进
1012         /// 增加空格才是正确的 默认的做法不符合这样的
1013         /// </summary>
1014         /// <returns></returns>
1015         public void SetSelRightIndent()
1016         {
1017             document.ExecCommand("Indent", false, null);
1018         }
1019 
1020         /// <summary>
1021         /// 获得 选中的字体 右缩进
1022         /// 增加空格才是正确的 默认的做法不符合这样的
1023         /// </summary>
1024         /// <returns></returns>
1025         public bool GetSelRightIndent()
1026         {
1027             return (bool)document2.queryCommandValue("Indent");
1028         }
1029 
1030         /// <summary>
1031         /// 设置 选中的字体 左缩进
1032         /// 增加空格才是正确的 默认的做法不符合这样的
1033         /// </summary>
1034         /// <returns></returns>
1035         public void SetSelLeftIndent()
1036         {
1037             document.ExecCommand("Outdent", false, null);
1038         }
1039 
1040         /// <summary>
1041         /// 获得 选中的字体 左缩进
1042         /// 增加空格才是正确的 默认的做法不符合这样的
1043         /// </summary>
1044         /// <returns></returns>
1045         public bool GetSelLeftIndent()
1046         {
1047             return (bool)document2.queryCommandValue("Outdent");
1048         } 
1049 
1050         #endregion
1051 
1052         #region 嵌入相关
1053 
1054 
1055         /// <summary>
1056         /// 设置 选中的字体 超链接
1057         /// </summary>
1058         /// <returns></returns>
1059         public void SetSelHyperLink()
1060         {
1061             document.ExecCommand("CreateLink", false, null);
1062         }
1063 
1064         /// <summary>
1065         /// 获得 选中的字体 超链接
1066         /// </summary>
1067         /// <returns></returns>
1068         public bool GetSelHyperLink()
1069         {
1070             return (bool)document2.queryCommandValue("CreateLink");
1071         }
1072 
1073         /// <summary>
1074         /// 设置 取消选中的字体 超链接
1075         /// </summary>
1076         /// <returns></returns>
1077         public void SetSelUnLink()
1078         {
1079             document.ExecCommand("Unlink", false, null);
1080         }
1081 
1082         /// <summary>
1083         /// 获得 取消选中的字体 超链接
1084         /// </summary>
1085         /// <returns></returns>
1086         public bool GetSelUnLink()
1087         {
1088             return (bool)document2.queryCommandValue("Unlink");
1089         }
1090 
1091         /// <summary>
1092         /// 设置 选中的  书签
1093         /// </summary>
1094         /// <returns></returns>
1095         public void SetSelBookmark()
1096         {
1097             document.ExecCommand("CreateBookmark", false, null);
1098         }
1099 
1100         /// <summary>
1101         /// 获得 选中的  书签
1102         /// </summary>
1103         /// <returns></returns>
1104         public bool GetSelBookmark()
1105         {
1106             return (bool)document2.queryCommandValue("CreateBookmark");
1107         }
1108 
1109         /// <summary>
1110         /// 取消  设置 选中的  书签
1111         /// </summary>
1112         /// <returns></returns>
1113         public void SetSelUnBookmark()
1114         {
1115             document.ExecCommand("UnBookmark", false, null);
1116         }
1117 
1118         /// <summary>
1119         /// 取消 获得 选中的  书签
1120         /// </summary>
1121         /// <returns></returns>
1122         public bool GetSelUnBookmark()
1123         {
1124             return (bool)document2.queryCommandValue("UnBookmark");
1125         }
1126 
1127         /// <summary>
1128         /// 设置 插入图片
1129         /// </summary>
1130         /// <returns></returns>
1131         public void SetInsertImage()
1132         {
1133             document.ExecCommand("InsertImage", true, null);
1134         }
1135 
1136         /// <summary>
1137         /// 设置 插入图片
1138         /// </summary>
1139         /// <param name="fileName">图片路径</param>
1140         public void SetInsertImage(string fileName)
1141         {
1142             document.ExecCommand("InsertImage", true, fileName);
1143         }
1144 
1145         /// <summary>
1146         /// 获得 插入图片
1147         /// </summary>
1148         /// <returns></returns>
1149         public bool GetInsertImage()
1150         {
1151             return (bool)document2.queryCommandValue("InsertImage");
1152         }
1153 
1154 
1155 
1156         #endregion
1157 
1158         #region 对话框
1159         /// <summary>
1160         /// 查找对话框
1161         /// </summary>
1162         public void ShowFindDialog()
1163         {
1164 
1165         }
1166 
1167 
1168         #endregion
1169 
1170         #region ShowMargin
1171         ///下面代码已经可以在InitializeComponent();的下面正常工作
1172         ///但无法在webbrowserCtrl1 的初始化中正常工作
1173         /// <summary>
1174         /// 去除边距 像richTextBoxShowMargin =false;
1175         ///
1176         /// 为了使代码能在主窗体InitializeComponent()下初始化有效增加了2句
1177         /// for (int i = 0; i < 1; i++)
1178         /// Application.DoEvents();
1179         /// 
1180         /// </summary>
1181         public void HideMargin()
1182         {
1183             for (int i = 0; i < 1; i++)
1184             {
1185                 Application.DoEvents();
1186                 if (webBrowser1.ReadyState == WebBrowserReadyState.Complete)
1187                 {
1188                     document2.body.style.marginLeft = "0px";
1189                     document2.body.style.marginTop = "0px";
1190                     document2.body.style.padding = "0px";
1191                 }
1192             }
1193         }
1194 
1195         /// <summary>
1196         /// 显示边距
1197         /// </summary>
1198         public void ShowMargin()
1199         {
1200             for (int i = 0; i < 1; i++)
1201             {
1202                 Application.DoEvents();
1203                 if (webBrowser1.ReadyState == WebBrowserReadyState.Complete)
1204                 {
1205                     document2.body.style.marginLeft = "10px";
1206                     document2.body.style.marginTop = "15px";
1207                     document2.body.style.padding = "0px";
1208                 }
1209             }
1210         }
1211 
1212         /// <summary>
1213         /// 判断是否有边距
1214         /// </summary>
1215         /// <returns>默认的是已经设置了边距</returns>
1216         public bool GetShowMargin()
1217         {
1218             try
1219             {
1220                 for (int i = 0; i < 1; i++)
1221                 {
1222                     Application.DoEvents();
1223                     if (webBrowser1.ReadyState == WebBrowserReadyState.Complete)
1224                     {
1225                         document2.body.style.padding = "0px";
1226                         string marginLeft = document2.body.style.marginLeft.ToString();//"10px";
1227                         string marginTop = document2.body.style.marginTop.ToString();// "15px";
1228 
1229                         if (marginLeft == "10px" || marginTop == "15px")
1230                         {
1231                             return true;
1232                         }
1233                     }
1234                 }
1235                 return false;
1236             }
1237             catch (System.Exception ex)
1238             {
1239                 //默认就是ShowMargin
1240                 return true;
1241             }
1242         }
1243 
1244 
1245         #endregion
1246 
1247         #region BordeStyle
1248         ///1249         ///下面这种写法要求
1250         ///在获得属性之前 确定已经用该 属性设置过一次
1251         ///否则
1252         ///引起异常:未将对象引用设置到对象的实例。
1253 
1254 
1255         /// <summary>
1256         ///设置无边框
1257         ///default none Default. No border is drawn, regardless of any specified borderWidth.
1258         /// </summary>
1259         public void SetStyleNone()
1260         {
1261             for (int i = 0; i < 1; i++)
1262             {
1263                 Application.DoEvents();
1264                 if (webBrowser1.ReadyState == WebBrowserReadyState.Complete)
1265                 {
1266                     document2.body.style.borderWidth = "0px";
1267                     document2.body.style.borderStyle = "none";
1268                 }
1269             }
1270         }
1271         /// <summary>
1272         ///获得 无边框
1273         ///default none Default. No border is drawn, regardless of any specified borderWidth.
1274         /// </summary>
1275         public bool GetStyleNone()
1276         {
1277             try
1278             {
1279                 for (int i = 0; i < 1; i++)
1280                 {
1281                     Application.DoEvents();
1282                     if (webBrowser1.ReadyState == WebBrowserReadyState.Complete)
1283                     {
1284                         //document2.body.style.borderWidth = "0px";
1285                         //document2.body.style.borderStyle = "none";
1286 
1287                         string borderStyle = document2.body.style.borderStyle.ToString();//"none";
1288                         string borderWidth = document2.body.style.borderWidth.ToString();// "0px";
1289 
1290                         if (borderStyle == "none" || borderWidth == "0px")
1291                         {
1292                             return true;
1293                         }
1294                     }
1295                 }
1296                 return false;
1297             }
1298             catch (System.Exception ex)
1299             {
1300                 MessageBox.Show(ex.Message);
1301                 //默认就是StyleNone
1302                 return true;
1303             }
1304         }
1305 
1306         /// <summary>
1307         /// 设置为FixSingle
1308         ///FixedSingle Border is the same as inset, but is surrounded by an additional single line, drawn in colors based on the value.
1309         /// </summary>
1310         public void SetStyleFixSingle()
1311         {
1312             for (int i = 0; i < 1; i++)
1313             {
1314                 Application.DoEvents();
1315                 if (webBrowser1.ReadyState == WebBrowserReadyState.Complete)
1316                 {
1317                     document2.body.style.borderWidth = "0.05cm";
1318                     document2.body.style.borderStyle = "window-inset";
1319                 }
1320             }
1321         }
1322 
1323         /// <summary>
1324         ///获得 FixSingle
1325         ///FixedSingle Border is the same as inset, but is surrounded by an additional single line, drawn in colors based on the value.
1326         /// </summary>
1327         public bool GetStyleFixSingle()
1328         {
1329             try
1330             {
1331                 for (int i = 0; i < 1; i++)
1332                 {
1333                     Application.DoEvents();
1334                     if (webBrowser1.ReadyState == WebBrowserReadyState.Complete)
1335                     {
1336                         string borderStyle = document2.body.style.borderStyle.ToString();//"none";
1337                         if (borderStyle == "window-inset")
1338                         {
1339                             return true;
1340                         }
1341                     }
1342                 }
1343                 return false;
1344             }
1345             catch (System.Exception ex)
1346             {
1347                 MessageBox.Show(ex.Message);
1348                 //默认是StyleNone
1349                 return false;
1350             }
1351         }
1352 
1353 
1354 
1355         /// <summary>
1356         /// 设置 Fixed3D
1357         /// Fixed3D 3-D inset is drawn in colors based on the value.
1358         /// </summary>
1359         public void SetStyleFixed3D()
1360         {
1361             for (int i = 0; i < 1; i++)
1362             {
1363                 Application.DoEvents();
1364                 if (webBrowser1.ReadyState == WebBrowserReadyState.Complete)
1365                 {
1366                     document2.body.style.borderWidth = "0.05cm";
1367                     document2.body.style.borderStyle = "inset";
1368                 }
1369             }
1370         }
1371 
1372 
1373         /// <summary>
1374         ///获得  Fixed3D
1375         ///Fixed3D 3-D inset is drawn in colors based on the value.
1376         /// </summary>
1377         public bool GetStyleFixed3D()
1378         {
1379             try
1380             {
1381                 for (int i = 0; i < 1; i++)
1382                 {
1383                     Application.DoEvents();
1384                     if (webBrowser1.ReadyState == WebBrowserReadyState.Complete)
1385                     {
1386                         string borderStyle = document2.body.style.borderStyle.ToString();//"none";
1387                         if (borderStyle == "inset")
1388                         {
1389                             return true;
1390                         }
1391                     }
1392                 }
1393                 return false;
1394             }
1395             catch (System.Exception ex)
1396             {
1397                 MessageBox.Show(ex.Message);
1398                 //默认是StyleNone
1399                 return false;
1400             }
1401         }
1402         #endregion
1403 
1404         #region HTML CTRL
1405  
1406 
1407         /// <summary>
1408         /// 设置 插入InsertButton
1409         /// 用按钮控件覆盖当前选中区。
1410         /// </summary>
1411         public void SetInsertButton()
1412         {
1413             document.ExecCommand("InsertButton", false, null);
1414         }
1415 
1416         /// <summary>
1417         /// 获得 插入InsertButton
1418         /// 用按钮控件覆盖当前选中区。
1419         /// </summary>
1420         /// <returns></returns>
1421         public bool GetInsertButton()
1422         {
1423             return (bool)document2.queryCommandValue("InsertButton");
1424         }
1425 
1426 
1427         /// <summary>
1428         /// 设置 插入InsertFieldset
1429         /// 用方框覆盖当前选中区。
1430         /// </summary>
1431         public void SetInsertFieldset()
1432         {
1433             document.ExecCommand("InsertFieldset", false, null);
1434         }
1435 
1436         /// <summary>
1437         /// 获得 插入InsertFieldset
1438         /// 用方框覆盖当前选中区。
1439         /// </summary>
1440         /// <returns></returns>
1441         public bool GetInsertFieldset()
1442         {
1443             return (bool)document2.queryCommandValue("InsertFieldset");
1444         }
1445 
1446 
1447         /// <summary>
1448         /// 设置 插入InsertHorizontalRule
1449         /// 用水平线覆盖当前选中区。
1450         /// </summary>
1451         public void SetInsertHorizontalRule()
1452         {
1453             document.ExecCommand("InsertHorizontalRule", false, null);
1454         }
1455 
1456         /// <summary>
1457         /// 获得 插入 InsertHorizontalRule
1458         /// 用水平线覆盖当前选中区。
1459         /// </summary>
1460         /// <returns></returns>
1461         public bool GetInsertHorizontalRule()
1462         {
1463             return (bool)document2.queryCommandValue("InsertHorizontalRule");
1464         }
1465 
1466         /// <summary>
1467         /// 设置 插入InsertIFrame
1468         /// 用水平线覆盖当前选中区。
1469         /// </summary>
1470         public void SetInsertIFrame()
1471         {
1472             document.ExecCommand("InsertIFrame", false, null);
1473         }
1474 
1475         /// <summary>
1476         /// 获得 插入InsertIFrame
1477         /// 用内嵌框架覆盖当前选中区。
1478         /// </summary>
1479         /// <returns></returns>
1480         public bool GetInsertIFrame()
1481         {
1482             return (bool)document2.queryCommandValue("InsertIFrame");
1483         }
1484 
1485 
1486         /// <summary>
1487         /// 设置 插入InsertInputButton
1488         /// 用按钮控件覆盖当前选中区。
1489         /// </summary>
1490         public void SetInsertInputButton()
1491         {
1492             document.ExecCommand("InsertInputButton", false, null);
1493         }
1494 
1495         /// <summary>
1496         /// 获得 插入InsertInputButton
1497         /// 用按钮控件覆盖当前选中区。
1498         /// </summary>
1499         /// <returns></returns>
1500         public bool GetInsertInputButton()
1501         {
1502             return (bool)document2.queryCommandValue("InsertIFrame");
1503         }
1504 
1505         /// <summary>
1506         /// 设置 插入InsertInputCheckbox
1507         /// 用复选框控件覆盖当前选中区。
1508         /// </summary>
1509         public void SetInsertInputCheckbox()
1510         {
1511             document.ExecCommand("InsertInputCheckbox", false, null);
1512         }
1513 
1514         /// <summary>
1515         /// 获得 插入InsertInputCheckbox
1516         /// 用复选框控件覆盖当前选中区。
1517         /// </summary>
1518         /// <returns></returns>
1519         public bool GetInsertInputCheckbox()
1520         {
1521             return (bool)document2.queryCommandValue("InsertInputCheckbox");
1522         }
1523 
1524         /// <summary>
1525         /// 设置 插入InsertInputFileUpload
1526         /// 用文件上载控件覆盖当前选中区。 
1527         /// </summary>
1528         public void SetInsertInputFileUpload()
1529         {
1530             document.ExecCommand("InsertInputFileUpload", false, null);
1531         }
1532 
1533         /// <summary>
1534         /// 获得 插入InsertInputFileUpload
1535         /// 用文件上载控件覆盖当前选中区。 
1536         /// </summary>
1537         /// <returns></returns>
1538         public bool GetInsertInputFileUpload()
1539         {
1540             return (bool)document2.queryCommandValue("InsertInputFileUpload");
1541         }
1542 
1543 
1544         /// <summary>
1545         /// 设置 插入InsertInputHidden
1546         /// 插入隐藏控件覆盖当前选中区。
1547         /// </summary>
1548         public void SetInsertInputHidden()
1549         {
1550             document.ExecCommand("InsertInputHidden", false, null);
1551         }
1552 
1553         /// <summary>
1554         /// 获得 插入InsertInputHidden
1555         /// 插入隐藏控件覆盖当前选中区。
1556         /// </summary>
1557         /// <returns></returns>
1558         public bool GetInsertInputHidden()
1559         {
1560             return (bool)document2.queryCommandValue("InsertInputHidden");
1561         }
1562 
1563 
1564         /// <summary>
1565         /// 设置 插入InsertInputImage
1566         /// 用图像控件覆盖当前选中区。
1567         /// </summary>
1568         public void SetInsertInputImage()
1569         {
1570             document.ExecCommand("InsertInputImage", false, null);
1571         }
1572 
1573         /// <summary>
1574         /// 获得 插入InsertInputImage
1575         ///用图像控件覆盖当前选中区。
1576         /// </summary>
1577         /// <returns></returns>
1578         public bool GetInsertInputImage()
1579         {
1580             return (bool)document2.queryCommandValue("InsertInputImage");
1581         }
1582 
1583 
1584         /// <summary>
1585         /// 设置 插入InsertInputPassword
1586         /// 用密码控件覆盖当前选中区。
1587         /// </summary>
1588         public void SetInsertInputPassword()
1589         {
1590             document.ExecCommand("InsertInputPassword", false, null);
1591         }
1592 
1593         /// <summary>
1594         /// 获得 插入InsertInputImage
1595         ///用密码控件覆盖当前选中区。
1596         /// </summary>
1597         /// <returns></returns>
1598         public bool GetInsertInputPassword()
1599         {
1600             return (bool)document2.queryCommandValue("InsertInputPassword");
1601         }
1602 
1603         /// <summary>
1604         /// 设置 插入InsertInputRadio
1605         /// 用单选钮控件覆盖当前选中区。 
1606         /// </summary>
1607         public void SetInsertInputRadio()
1608         {
1609             document.ExecCommand("InsertInputRadio", false, null);
1610         }
1611 
1612         /// <summary>
1613         /// 获得 插入InsertInputRadio
1614         ///用单选钮控件覆盖当前选中区。
1615         /// </summary>
1616         /// <returns></returns>
1617         public bool GetInsertInputRadio()
1618         {
1619             return (bool)document2.queryCommandValue("InsertInputRadio");
1620         }
1621 
1622         /// <summary>
1623         /// 设置 插入InsertInputReset
1624         /// 用重置控件覆盖当前选中区。。 
1625         /// </summary>
1626         public void SetInsertInputReset()
1627         {
1628             document.ExecCommand("InsertInputReset", false, null);
1629         }
1630 
1631         /// <summary>
1632         /// 获得 插入InsertInputReset
1633         ///用重置控件覆盖当前选中区。。
1634         /// </summary>
1635         /// <returns></returns>
1636         public bool GetInsertInputReset()
1637         {
1638             return (bool)document2.queryCommandValue("InsertInputReset");
1639         }
1640 
1641         /// <summary>
1642         /// 设置 插入InsertInputSubmit
1643         /// 用提交控件覆盖当前选中区。
1644         /// </summary>
1645         public void SetInsertInputSubmit()
1646         {
1647             document.ExecCommand("InsertInputSubmit", false, null);
1648         }
1649 
1650         /// <summary>
1651         /// 获得 插入InsertInputSubmit
1652         ///用提交控件覆盖当前选中区。
1653         /// </summary>
1654         /// <returns></returns>
1655         public bool GetInsertInputSubmit()
1656         {
1657             return (bool)document2.queryCommandValue("InsertInputSubmit");
1658         }
1659 
1660 
1661         /// <summary>
1662         /// 设置 插入InsertInputText
1663         /// 用文本控件覆盖当前选中区。。
1664         /// </summary>
1665         public void SetInsertInputText()
1666         {
1667             document.ExecCommand("InsertInputText", false, null);
1668         }
1669 
1670         /// <summary>
1671         /// 获得 插入InsertInputText
1672         ///用文本控件覆盖当前选中区。。
1673         /// </summary>
1674         /// <returns></returns>
1675         public bool GetInsertInputText()
1676         {
1677             return (bool)document2.queryCommandValue("InsertInputText");
1678         }
1679 
1680         /// <summary>
1681         /// 设置 插入InsertMarquee
1682         ///用空字幕覆盖当前选中区。
1683         /// </summary>
1684         public void SetInsertMarquee()
1685         {
1686             document.ExecCommand("InsertMarquee", false, null);
1687         }
1688 
1689         /// <summary>
1690         /// 获得 插入InsertMarquee
1691         ///用空字幕覆盖当前选中区。
1692         /// </summary>
1693         /// <returns></returns>
1694         public bool GetInsertMarquee()
1695         {
1696             return (bool)document2.queryCommandValue("InsertMarquee");
1697         }
1698 
1699 
1700         /// <summary>
1701         /// 设置 插入InsertSelectDropdown
1702         ///用下拉框控件覆盖当前选中区。
1703         /// </summary>
1704         public void SetInsertSelectDropdown()
1705         {
1706             document.ExecCommand("InsertSelectDropdown", false, null);
1707         }
1708 
1709         /// <summary>
1710         /// 获得 插入InsertSelectDropdown
1711         ///用下拉框控件覆盖当前选中区。
1712         /// </summary>
1713         /// <returns></returns>
1714         public bool GetInsertSelectDropdown()
1715         {
1716             return (bool)document2.queryCommandValue("InsertSelectDropdown");
1717         }
1718 
1719         /// <summary>
1720         /// 设置 插入InsertSelectListbox
1721         ///用列表框控件覆盖当前选中区。
1722         /// </summary>
1723         public void SetInsertSelectListbox()
1724         {
1725             document.ExecCommand("InsertSelectListbox", false, null);
1726         }
1727 
1728         /// <summary>
1729         /// 获得 插入InsertSelectListbox
1730         ///用列表框控件覆盖当前选中区。
1731         /// </summary>
1732         /// <returns></returns>
1733         public bool GetInsertSelectListbox()
1734         {
1735             return (bool)document2.queryCommandValue("InsertSelectListbox");
1736         }
1737 
1738         /// <summary>
1739         /// 设置 插入InsertTextArea
1740         ///用多行文本输入控件覆盖当前选中区。
1741         /// </summary>
1742         public void SetInsertTextArea()
1743         {
1744             document.ExecCommand("InsertTextArea", false, null);
1745         }
1746 
1747         /// <summary>
1748         /// 获得 插入InsertTextArea
1749         ///用多行文本输入控件覆盖当前选中区。
1750         /// </summary>
1751         /// <returns></returns>
1752         public bool GetInsertTextArea()
1753         {
1754             return (bool)document2.queryCommandValue("InsertTextArea");
1755         }
1756 
1757         #endregion
1758     }
1759 }
View Code
原文地址:https://www.cnblogs.com/xe2011/p/3464069.html