次の方法で共有


ContextNode.SubNodes プロパティ

ContextNode オブジェクトの直接の子を取得します。

名前空間 :  Microsoft.Ink
アセンブリ :  Microsoft.Ink.Analysis (Microsoft.Ink.Analysis.dll 内)

構文

'宣言
Public ReadOnly Property SubNodes As ContextNodeCollection
'使用
Dim instance As ContextNode
Dim value As ContextNodeCollection

value = instance.SubNodes
public ContextNodeCollection SubNodes { get; }
public:
property ContextNodeCollection^ SubNodes {
    ContextNodeCollection^ get ();
}
/** @property */
public ContextNodeCollection get_SubNodes()
public function get SubNodes () : ContextNodeCollection

プロパティ値

型 : Microsoft.Ink.ContextNodeCollection
ContextNode オブジェクトの直接の子。

解説

すべての子孫ではなく、直接の子だけを返します。

ContextNode オブジェクトのツリーを再帰的に処理するメソッドを次の例に示します。TreeNode オブジェクトを追加することにより、SubNodes プロパティを使用して System.Windows.Forms.TreeView に書き込みます。次に、Text プロパティを GetRecognizedString に設定します。

Private Sub WalkTree(ByVal parentContextNode As Microsoft.Ink.ContextNode, _
                     ByVal parentTreeNode As TreeNode)

    Dim cNode As ContextNode
    For Each cNode In parentContextNode.SubNodes
        Dim newTNode As New TreeNode(cNode.ToString())
        If TypeOf cNode Is Microsoft.Ink.InkWordNode Then
            newTNode.Text = newTNode.Text + _
                ": " + CType(cNode, InkWordNode).GetRecognizedString()
        ElseIf TypeOf cNode Is Microsoft.Ink.InkDrawingNode Then
            Dim shapeName As String = CType(cNode, InkDrawingNode).GetShapeName()
            If shapeName <> "" Then
                newTNode.Text = newTNode.Text + ": " + shapeName
            End If
        End If
        WalkTree(cNode, newTNode)
        parentTreeNode.Nodes.Add(newTNode)

        ' Add the context node as a tag of the tree node
        newTNode.Tag = cNode
    Next cNode

End Sub 'WalkTree
        private void WalkTree(ContextNode parentContextNode, TreeNode parentTreeNode)
        {
            foreach (ContextNode cNode in parentContextNode.SubNodes)
            {
                TreeNode newTNode = new TreeNode(cNode.ToString());
                if (cNode is Microsoft.Ink.InkWordNode)
                {
                    newTNode.Text +=
                        ": " + ((InkWordNode)cNode).GetRecognizedString();
                }
                else if (cNode is Microsoft.Ink.InkDrawingNode)
                {
                    String shapeName = ((InkDrawingNode)cNode).GetShapeName();
                    if (shapeName != "")
                        newTNode.Text += ": " + shapeName;
                }
                WalkTree(cNode, newTNode);
                parentTreeNode.Nodes.Add(newTNode);

                // Add the context node as a tag of the tree node
                newTNode.Tag = cNode;
            }
        }

プラットフォーム

Windows Vista

.NET Framework および .NET Compact Framework では、各プラットフォームのすべてのバージョンはサポートしていません。サポートされているバージョンについては、「.NET Framework システム要件」を参照してください。

バージョン情報

.NET Framework

サポート対象 : 3.0

参照

参照

ContextNode クラス

ContextNode メンバ

Microsoft.Ink 名前空間

ContextNode.ParentNode