HtmlElement.CanHaveChildren 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取一个值,该值指示此元素是否可以拥有子元素。
public:
property bool CanHaveChildren { bool get(); };
public bool CanHaveChildren { get; }
member this.CanHaveChildren : bool
Public ReadOnly Property CanHaveChildren As Boolean
属性值
如果元素可以拥有子元素,则为 true
;否则为 false
。
示例
下面的代码示例处理 Click 上的 HtmlDocument事件。 如果之前未使用鼠标单击选择元素,代码会将该元素分配给名为 的 MoveElement
私有类变量。 如果选择了某个元素,代码会尝试将其追加到刚刚单击的元素。 此代码示例要求应用程序承载一 WebBrowser 个名为 的 WebBrowser1
控件,并且你已为 Click 上的 HtmlDocument事件添加了事件处理程序。
HtmlDocument doc;
HtmlElement moveElement;
private void EnableElementMove()
{
if (webBrowser1 != null)
{
doc = webBrowser1.Document;
doc.Click += new HtmlElementEventHandler(doc_Click);
}
}
void doc_Click(object sender, HtmlElementEventArgs e)
{
if (moveElement == null)
{
moveElement = webBrowser1.Document.GetElementFromPoint(e.ClientMousePosition);
}
else
{
HtmlElement targetElement = webBrowser1.Document.GetElementFromPoint(e.ClientMousePosition);
if (targetElement.CanHaveChildren)
{
targetElement.AppendChild(moveElement);
moveElement = null;
}
}
}
Dim WithEvents Doc As HtmlDocument
Dim MoveElement As HtmlElement
Private Sub EnableElementMove()
If (WebBrowser1 IsNot Nothing) Then
Doc = WebBrowser1.Document
End If
End Sub
Private Sub Document_Click(ByVal sender As Object, ByVal args As HtmlElementEventArgs) Handles Doc.Click
If (MoveElement Is Nothing) Then
MoveElement = WebBrowser1.Document.GetElementFromPoint(args.ClientMousePosition)
Else
With WebBrowser1.Document
Dim TargetElement As HtmlElement = .GetElementFromPoint(args.ClientMousePosition)
If (TargetElement.CanHaveChildren) Then
TargetElement.AppendChild(MoveElement)
MoveElement = Nothing
End If
End With
End If
End Sub
注解
某些元素(如 IMG
和 SCRIPT
)不能有任何子元素。 在对任意元素调用 AppendChild 或 InsertAdjacentElement 之前,请使用此属性。