Condividi tramite


Metodo ContextNode.CreateSubNode

Aggiornamento: novembre 2007

Crea un nuovo oggetto ContextNode figlio.

Spazio dei nomi:  System.Windows.Ink
Assembly:  IAWinFX (in IAWinFX.dll)

Sintassi

'Dichiarazione
Public Function CreateSubNode ( _
    type As Guid _
) As ContextNode
'Utilizzo
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

Parametri

  • type
    Tipo: System.Guid
    Tipo di nodo di contesto da creare.

Valore restituito

Tipo: System.Windows.Ink.ContextNode
L'oggetto ContextNode appena creato ha come padre l'oggetto [T:System.Windows.Ink.ContextNode as its parent].

Note

Quando esistono già nodi figlio, l'oggetto ContextNode appena creato viene aggiunto come ultimo figlio nell'insieme di oggetti SubNodes.

Se l'applicazione tenta inavvertitamente di aggiungere un nodo inappropriato, ad esempio un'area di scrittura dove è previsto un nodo ImageNode, il codice genera un'eccezione da CreateSubNode.

Esempi

In questo esempio tutte le righe vengono inserite nei rispettivi paragrafi. Vengono utilizzate le righe di un oggetto InkAnalyzer, theInkAnalyzer; quindi viene creato un nuovo sottonodo di paragrafo per ciascuna di esse e le righe vengono riassociate come padre ai nuovi paragrafi.

' 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);
}

Piattaforme

Windows Vista

.NET Framework e .NET Compact Framework non supportano tutte le versioni di ciascuna piattaforma. Per un elenco delle versioni supportate, vedere Requisiti di sistema di .NET Framework.

Informazioni sulla versione

.NET Framework

Supportato in: 3.0

Vedere anche

Riferimenti

ContextNode Classe

Membri ContextNode

Spazio dei nomi System.Windows.Ink

ContextNode.DeleteSubNode