このトピックでは、 xamDiagram™ コントロールの構成可能な要素の概要を説明します。
このトピックを理解するために、以下のトピックを参照することをお勧めします。
このトピックは、以下のセクションで構成されます。
xamDiagram の構成要素は、以下のカテゴリに分割できます。
ダイアグラムの構成
項目の構成 – ノードおよび接続に適用可能な構成
ノードの構成
接続の構成
ユーザー インタラクションの構成
以下の表は、 xamDiagram コントロールの構成可能な要素を簡単に説明し、それらを構成するプロパティにマップします。詳細は、表の後に記載されています。
各ノードに対しそれぞれの位置が指定されていない場合は、グローバルなレイアウト アルゴリズムを使用してノードのレイアウトを設定できます。既存のレイアウト (力指向グラフ レイアウト、ツリー レイアウト、グリッド レイアウト) の 1 つの使用、または独自のレイアウトの実装ができます。
xamDiagram コントロールは、現在表示されている部分を取得するためのプロパティのセットを公開します。xamDiagram では、現在表示されている部分を位置とサイズによって決定する 3 つの四角形の概念を使用します。XamDiagram クラスは、これらの四角形を個別のプロパティで表示します。
ViewportRect は、現在コントロールで使用できるスペースを示します。コントロールのために確保される余白と ViewportRect は、 xamDiagram と完全に同じサイズになります。
WorldRect はダイアグラムのノードおよび接続が存在する領域を示しますが、その領域はダイアグラムの項目のすべての境界四角形の結合部分を表す四角形です。
WindowRect は、 ViewportRect で表示する WorldRect の部分を決定します。
以下の表は、 xamDiagram コントロールのダイアグラム項目 (ノードおよび接続) の構成可能な要素を簡単に説明し、それらを構成するプロパティにマップします。詳細は、表の後に記載されています。
xamDiagram 項目は、ルック アンド フィールのカスタマイズを有効にする複数のプロパティを公開します。
ダイアグラムの項目には、項目の内容に適用できる、表示テンプレートと編集テンプレートの 2 つのテンプレートがあります。表示テンプレートはコンテンツの表現を定義し、編集テンプレートは項目の内容を編集する場合に適用します。
以下の表は、ダイアグラム ノードの構成可能な要素を簡単に説明し、それらを構成するプロパティにマップします。詳細は、表の後に記載されています。
xamDiagram ノードは、ダイアグラムの領域の任意の位置に個別に配置、またはレイアウト アルゴリズム (Layout プロパティを介して使用可能な設定) を適用して配置します。(レイアウト アルゴリズムの詳細は、 レイアウトの構成のトピックを参照してください。)
デフォルトでは、明示的なオーバーライドが適用されていない場合、座標系の原点 (0、0) に新たに作成されたノードが表示されます。
ダイアグラムのノードのサイズは、幅と高さを設定すると明示的に制御できます。デフォルトのサイズはノードの図形に依存します。(デフォルト サイズの参照については、 ノードのデフォルト サイズを参照してください。)
xamDiagram には、定義済みのノードの図形が複数あります。(詳細は、 概要のトピックを参照してください。)定義済みの図形は、 ShapeType プロパティを使用して選択します。このプロパティは、ShapeType
列挙体として使用できる各ノードの図形を値として受け取ります。定義済みの図形に目的の図形がない場合は、 Geometry プロパティでカスタム図形を設定できます。
接続ポイントとは、ダイアグラム接続を開始 / 終了できるノードのポイントです。ノードの接続ポイントは、名前と座標により指定されます。
名前 - 接続の DiagramConnection.StartNodeConnectionPointName / DiagramConnection.EndNodeConnectionPointName プロパティを介して接続の接続ポイントを明示的に指定する場合に使用されます。このため、ノードの接続ポイントの名前は、すべて一意であることが必要です。
座標 - ノードの長方形に対応しています。座標の範囲は 0,0 (左上) から 1,1 (右下) までです。
各接続ポイントは、 Name プロパティと Position プロパティを公開する DiagramConnectionPoint オブジェクトによって表されます。
DiagramNode.ShapeType プロパティにより設定された定義済みの図形タイプを使用する場合、ノードの ConnectionPoints コレクションで、ノード タイプに応じていくつかのポイントが事前設定されます。カスタム ノードの図形では、デフォルトで接続ポイントが追加されません。
以下の表は、ダイアグラム ノードの構成可能な要素を簡単に説明し、それらを構成するプロパティにマップします。詳細は、表の後に記載されています。
xamDiagram コントロールのダイアグラム接続の始点および終点は、2 つの方法で構成されます。
相対 - 接続するノード、すなわち開始ノードと終了ノードを指定します。この方法では、接続を開始ノードおよび終了ノードに関連付ける必要があります。この場合、ノードが接続の始点と終点を制御します (ノードの位置を移動すると、接続は自動的に調整されます。)。
絶対 - ダイアグラム上の接続の始点および終点の座標を指定します。
接続の一端にノードを指定し、もう一端に座標を指定する方法もあります。
ダイアグラム接続のキャップは、始点および終点を示す図形です。デフォルトでは、接続の開始点にキャップはなく、接続端は塗りつぶされた矢印キャップです。
xamDiagram には、定義済みのキャップの図形が複数あります。(詳細は、 視覚要素の概要 ( xamDiagram ) のトピックを参照してください。)定義済みのキャップは、 StartCapType / EndCapType プロパティを使用して選択します。これらのプロパティは、 DiagramConnectionCapType 列挙体として選択できるキャップ図形を、値として受け取ります。任意の定義済みのキャップ タイプを使用する場合は、 StartCapSize / EndCapSize プロパティでキャップ サイズも指定できます。
カスタム キャップを全体的に使用する場合は、 DiagramConnectionCapPresenter のターゲット タイプのカスタム スタイル
を StartCapStyle / EndCapStyle プロパティで設定できます。このスタイルでは、目的の外観を得るためにカスタムの ControlTemplate
を指定できます。
以下の表は、ダイアグラム ノードの構成可能な要素を簡単に説明し、それらを構成するプロパティにマップします。詳細は、表の後に記載されています。
xamDiagram コントロールは、ダイアグラム項目で実行されるアクションやコントロールの UI とのインタラクションを表すことができるコマンド セット、元に戻す / やり直し操作の履歴に影響を与えるコマンド セットをサポートします。コマンドは、キーボード ショートカット、その他のコントロールとのインタラクションなどを使用して呼び出すことができます。
多くのコマンドは、一般的なインターフェイスの規格に従って、キーボードのキーやキーの組み合わせに関連付けられています (コピーする場合の Ctrl+Cなど)。ただし、プログラムによるオーバーライドで、キーボード ショートカット (またはキーの組み合わせ) を変更することができます。(詳細は、 キーボード ショートカットの構成を参照してください。)
xamDiagram コントロールのダイアグラムの項目は、コントロールのコンテキスト メニューの機能を使用して構成できます。コンテキスト メニューはオプション ペインで表示することができます。ダイアグラムの項目 (複数可) を選択すると表示されるギア アイコンをクリックすると、オプション ペインが表示されます。デフォルトでは、コンテキスト メニューはダイアグラムで無効になっています。
xamDiagram では、マウスによる xamDiagram の複数の操作方法が提供されています。操作は Tool と DefaultDragInteraction の 2 つのプロパティで設定されます。Tool の設定では、 xamDiagram 上でクリックとドラッグを実行した場合の状態を設定します。以下のツールを使用できます。
ポインター
コネクタ
デフォルトはポインターです。これにより、 DefaultDragInteraction 設定で制御される複数の操作を実行できます。サポートされる操作は以下のとおりです。
なし
ズーム
パン
選択 (デフォルト)
コネクタ ツールでは、接続をダイアグラムにドラッグすることで描画できます。
xamDiagram コントロールには、ダイアグラム スペース内 (デフォルトは右下隅) に配置された別のペインに、コンテンツ タイプ全体の概要を小さなサイズで表示できる機能があります。
xamDiagram コントロールでは、ダイアグラム領域にあるダイアグラムの項目をプログラムによって選択できるようにする機能が提供されています。使用できる選択機能には、「Single」、「Multiple」、「None」があり、いずれもプロパティの設定で構成できます。デフォルトでは、ダイアグラムの複数の項目の選択が有効になっています。
xamDiagram は、コマンドに関連付けられたキーボード ショートカットのセットを公開します。すべてのショートカットのリストについては、 概要を参照してください。定義済みのショートカットの変更、または削除して新しいショートカットを定義することができます。
xamDiagram コントロールでは、定義済みの図形セットから直接ダイアグラムにダイアグラム項目をドラッグ アンド ドロップできる機能が提供されています。この機能は、 xamDiagramToolbox™ コントロールにより提供されます。デフォルトでは、2 つの事前構成済みの図形カテゴリ (ラベルを表すノードなど、現在サポートされているすべてのダイアグラム ノード タイプ、および 2 つのタイプのダイアグラム接続を含む Basic Shapes と Connections ) があります。
xamDiagram コントロールでは、操作履歴を保持して元に戻す / やり直し操作を実行することで、元に戻す / やり直し機能がサポートされています。
Infragistics Undo/Redo Framework は、Ultimate UI for WPF で元に戻す / やり直し機能を提供しています。
このトピックの追加情報については、以下のトピックも合わせてご参照ください。