本文整理匯總了C#中OpenLiveWriter.Mshtml.MarkupRange.GetTopLevelElements方法的典型用法代碼示例。如果您正苦於以下問題:C# MarkupRange.GetTopLevelElements方法的具體用法?C# MarkupRange.GetTopLevelElements怎麽用?C# MarkupRange.GetTopLevelElements使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類OpenLiveWriter.Mshtml.MarkupRange
的用法示例。
在下文中一共展示了MarkupRange.GetTopLevelElements方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C#代碼示例。
示例1: RemoveAlignmentIfSingleTable
/// <summary>
/// If this element is a table, and there's nothing else before or after it and it's aligned left or right
/// then removes the alignment.
/// </summary>
/// <param name="range">The original source range.</param>
private void RemoveAlignmentIfSingleTable(MarkupRange range)
{
// WinLive 273280: Alignment on a table acts like a float, which can throw off the layout of the rest of
// the document. If there is nothing before or after the table, then we can safely remove the alignment.
IHTMLElement[] topLevelElements = range.GetTopLevelElements(e => !(e is IHTMLCommentElement));
if (topLevelElements.Length == 1 &&
topLevelElements[0] is IHTMLTable &&
(String.Compare(topLevelElements[0].getAttribute("align", 2) as string, "left", StringComparison.OrdinalIgnoreCase) == 0 ||
String.Compare(topLevelElements[0].getAttribute("align", 2) as string, "right", StringComparison.OrdinalIgnoreCase) == 0))
{
topLevelElements[0].removeAttribute("align", 0);
}
}
示例2: GetContainingSmartContentElement
public static IHTMLElement GetContainingSmartContentElement(MarkupRange range)
{
IHTMLElement containingSmartContent = range.ParentElement(IsSmartContentContainer);
if (containingSmartContent != null)
{
return containingSmartContent;
}
else
{
IHTMLElement[] elements = range.GetTopLevelElements(MarkupRange.FilterNone);
if (elements.Length == 1 && IsSmartContent(elements[0]))
{
return elements[0];
}
}
return null;
}