ContextNode.CreateSubNode-Methode
Erstellt ein neues untergeordnetes ContextNode-Objekt.
Namespace: System.Windows.Ink
Assembly: IAWinFX (in IAWinFX.dll)
Syntax
'Declaration
Public Function CreateSubNode ( _
type As Guid _
) As ContextNode
'Usage
Dim instance As ContextNode
Dim type As Guid
Dim returnValue As ContextNode
returnValue = instance.CreateSubNode(type)
public ContextNode CreateSubNode(
Guid type
)
public:
ContextNode^ CreateSubNode(
Guid type
)
public ContextNode CreateSubNode(
Guid type
)
public function CreateSubNode(
type : Guid
) : ContextNode
Parameter
- type
Typ: System.Guid
Der Typ des zu erstellenden Kontextknotens.
Rückgabewert
Typ: System.Windows.Ink.ContextNode
Das neu erstellte ContextNode-Objekt hat den [T:System.Windows.Ink.ContextNode as its parent].
Hinweise
Wenn bereits untergeordnete Knoten bestehen, wird der neu erstellte ContextNode als letzter untergeordneter Knoten in die Auflistung derSubNodes aufgenommen.
Wenn Ihre Anwendung versehentlich versucht einen falschen Knoten hinzuzufügen, beispielsweise einen Schreibbereich, in dem ein ImageNode-Knoten erwartet wird, dann löst der Code eine Ausnahme von CreateSubNode aus.
Beispiele
In diesem Beispiel werden alle Zeilen in eigene Absätze eingefügt. Es verwendet die Zeilen eines InkAnalyzer, theInkAnalyzer;, erstellt einen neuen Absatz-Unterknoten für jeden von ihnen und ordnet die Zeilen denen der neuen Absätze zu.
' Take each line and make it its own paragraph
Dim originalParagraphs As ContextNodeCollection = _
theInkAnalyzer.FindNodesOfType(ContextNodeType.Paragraph)
Dim lines As ContextNodeCollection = _
theInkAnalyzer.FindNodesOfType(ContextNodeType.Line)
For Each lineNode As ContextNode In lines
' Create a new paragraph
Dim paragraph As ContextNode = lineNode.ParentNode
Dim writingRegion As ContextNode = paragraph.ParentNode
Dim newParagraph As ParagraphNode = CType(writingRegion.CreateSubNode(ContextNodeType.Paragraph), ParagraphNode)
' Reparent the line
lineNode.Reparent(newParagraph)
Next lineNode
' Remove original paragraphs
For Each originalParagraph As ContextNode In originalParagraphs
Dim originalWritingRegion As ContextNode = originalParagraph.ParentNode
originalWritingRegion.DeleteSubNode(originalParagraph)
Next originalParagraph
// Take each line and make it its own paragraph
ContextNodeCollection originalParagraphs =
theInkAnalyzer.FindNodesOfType(ContextNodeType.Paragraph);
ContextNodeCollection lines =
theInkAnalyzer.FindNodesOfType(ContextNodeType.Line);
foreach (ContextNode lineNode in lines)
{
// Create a new paragraph
ContextNode paragraph = lineNode.ParentNode;
ContextNode writingRegion = paragraph.ParentNode;
ParagraphNode newParagraph = (ParagraphNode)
writingRegion.CreateSubNode(ContextNodeType.Paragraph);
// Reparent the line
lineNode.Reparent(newParagraph);
}
// Remove original paragraphs
foreach (ContextNode originalParagraph in originalParagraphs)
{
ContextNode originalWritingRegion = originalParagraph.ParentNode;
originalWritingRegion.DeleteSubNode(originalParagraph);
}
Plattformen
Windows Vista
.NET Framework und .NET Compact Framework unterstützen nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.
Versionsinformationen
.NET Framework
Unterstützt in: 3.0