コード例 #1
0
ファイル: EditorTable.cs プロジェクト: ikvm/webmatrix
 public EditorTable(HtmlEditor editor, EditorSelection selection)
 {
     this._editor = editor;
     this._selection = selection;
     if (!IsTableSelection(selection))
     {
         throw new ArgumentException();
     }
     ICollection items = selection.Items;
     if (items.Count == 1)
     {
         IEnumerator enumerator = items.GetEnumerator();
         enumerator.MoveNext();
         for (Interop.IHTMLElement element = (Interop.IHTMLElement) enumerator.Current; element != null; element = element.GetParentElement())
         {
             if (string.Compare(element.GetTagName(), "td", true) == 0)
             {
                 this._element = element;
                 this._table = element.GetParentElement().GetParentElement().GetParentElement() as Interop.IHTMLTable;
                 return;
             }
             if (string.Compare(element.GetTagName(), "tr", true) == 0)
             {
                 this._element = element;
                 this._table = element.GetParentElement().GetParentElement() as Interop.IHTMLTable;
                 return;
             }
             if (string.Compare(element.GetTagName(), "tbody", true) == 0)
             {
                 this._element = element;
                 this._table = element.GetParentElement() as Interop.IHTMLTable;
                 return;
             }
             if (string.Compare(element.GetTagName(), "table", true) == 0)
             {
                 this._element = element;
                 this._table = element as Interop.IHTMLTable;
                 return;
             }
         }
     }
 }
コード例 #2
0
ファイル: EditorTable.cs プロジェクト: ikvm/webmatrix
 public static bool IsTableSelection(EditorSelection selection)
 {
     selection.SynchronizeSelection();
     if ((selection.SelectionType != EditorSelectionType.TextSelection) || (selection.Length <= 0))
     {
         ICollection items = selection.Items;
         if (items.Count == 1)
         {
             IEnumerator enumerator = items.GetEnumerator();
             enumerator.MoveNext();
             for (Interop.IHTMLElement element = (Interop.IHTMLElement) enumerator.Current; element != null; element = element.GetParentElement())
             {
                 if (string.Compare(element.GetTagName(), "td", true) == 0)
                 {
                     return true;
                 }
                 if (string.Compare(element.GetTagName(), "tr", true) == 0)
                 {
                     return true;
                 }
                 if (string.Compare(element.GetTagName(), "tbody", true) == 0)
                 {
                     return true;
                 }
                 if (string.Compare(element.GetTagName(), "table", true) == 0)
                 {
                     return true;
                 }
             }
         }
     }
     return false;
 }