ContextNode.CreateSubNode (Método)
Actualización: noviembre 2007
Crea un nuevo objeto ContextNode secundario.
Espacio de nombres: System.Windows.Ink
Ensamblado: IAWinFX (en IAWinFX.dll)
Sintaxis
'Declaración
Public Function CreateSubNode ( _
type As Guid _
) As ContextNode
'Uso
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
Parámetros
- type
Tipo: System.Guid
Tipo de nodo de contexto que se va a crear.
Valor devuelto
Tipo: System.Windows.Ink.ContextNode
El objeto ContextNode creado recientemente tiene [T:System.Windows.Ink.ContextNode as its parent].
Comentarios
Si ya existen nodos secundarios, el objeto ContextNode creado recientemente se agrega como el último elemento secundario de la colección de SubNodes.
Si la aplicación intenta agregar inadvertidamente un nodo inadecuado, por ejemplo una región de escritura en la que se espera un nodo ImageNode, el código produce una excepción del método CreateSubNode.
Ejemplos
En este ejemplo todas las líneas se sitúan en sus propios párrafos. Se utilizan las líneas de un objeto InkAnalyzer, theInkAnalyzer;, se crea un nuevo subnodo de párrafo para cada uno de ellos; y se cambia el elemento primario de las líneas para esos nuevos párrafos.
' 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);
}
Plataformas
Windows Vista
.NET Framework y .NET Compact Framework no admiten todas las versiones de cada plataforma. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.
Información de versión
.NET Framework
Compatible con: 3.0