GraphLinksModelLinkData
INotifyPropertyChanged、ICloneable、IChangeDataValue@ インターフェイスを介して、プロパティ変更通知、コピー、および undo をサポートするリンクデータの簡単な表現。
実装: INotifyPropertyChanged, IChangeDataValue, ICloneable
コンストラクター
public GraphLinksModelLinkData()
graphLinksModelLinkData = GraphLinksModelLinkData()
デフォルトコンストラクタは、ノードへの参照なしで空のオブジェクトを生成します。
public GraphLinksModelLinkData(NodeKey from, PortKey fromport, NodeKey to, PortKey toport)
graphLinksModelLinkData = GraphLinksModelLinkData(from, fromport, to, toport)
このコンストラクタは、From と To プロパティを初期化します。
- from
- ノードキーは、リンクが来るノードデータを識別します。
- fromport
- リンクが接続される「から」ノードのポートを識別するオプションの値
- to
- ノードキーは、リンクが進むノードデータを識別します。
- toport
- リンクが接続される「to」ノードのポートを識別するオプションの値
public GraphLinksModelLinkData(NodeKey from, NodeKey to)
graphLinksModelLinkData = GraphLinksModelLinkData(from, to)
このコンストラクタは、From と To プロパティを初期化します。
- from
- to
プロパティ
public string Category { get; set; }
value = graphLinksModelLinkData.Category
graphLinksModelLinkData.Category = value
リンクデータが属するカテゴリの名前を付ける文字列またはセットします。
public NodeKey From { get; set; }
value = graphLinksModelLinkData.From
graphLinksModelLinkData.From = value
このリンクからノードのキー値を取得または設定します。
public PortKey FromPort { get; set; }
value = graphLinksModelLinkData.FromPort
graphLinksModelLinkData.FromPort = value
ノードのポートからオプションのパラメータ情報を取得またはセットします。
public NodeKey LabelNode { get; set; }
value = graphLinksModelLinkData.LabelNode
graphLinksModelLinkData.LabelNode = value
ラベルが付いたかのように、このリンクにあるノードのキー値を取得またはセットします。
public IEnumerable<Point> Points { get; set; }
value = graphLinksModelLinkData.Points
graphLinksModelLinkData.Points = value
リンクのパスを定義するために使用されるポイントのコレクションをゲットまたはセットします。
public string Text { get; set; }
value = graphLinksModelLinkData.Text
graphLinksModelLinkData.Text = value
リンクにテキストラベルに使用できる文字列を取得またはセットします。
public NodeKey To { get; set; }
value = graphLinksModelLinkData.To
graphLinksModelLinkData.To = value
このリンクが進むノードのキー値を取得またはセットします。
public PortKey ToPort { get; set; }
value = graphLinksModelLinkData.ToPort
graphLinksModelLinkData.ToPort = value
To ノードのポートのオプションのパラメータ情報を取得またはセットします。
メソッド
public virtual void ChangeDataValue(ModelChangedEventArgs e, bool undo)
graphLinksModelLinkData.ChangeDataValue(e, undo)
このメソッドは、undo と redo の state 変更を実行するのに使われた @IChangeDataValueインターフェイスを実装します。
- e
- 変更を記述する編集は、実行する
- undo
- 行方不明の場合、 再発した場合の false
public virtual object Clone()
result = graphLinksModelLinkData.Clone()
このデータのコピーを作成します。これにより、ICloneable インターフェイスが実装されます。
protected virtual string ConvertNodeKeyToString(NodeKey key)
result = graphLinksModelLinkData.ConvertNodeKeyToString(key)
キー値を文字列に変換します。
- key
戻り値: 文字列が元のキー値を回復できる文字列
protected virtual string ConvertPortKeyToString(PortKey key)
result = graphLinksModelLinkData.ConvertPortKeyToString(key)
キー値を文字列に変換します。
- key
戻り値: 文字列が元のキー値を回復できる文字列
protected virtual NodeKey ConvertStringToNodeKey(string s)
result = graphLinksModelLinkData.ConvertStringToNodeKey(s)
文字列をキー値に変換します。
- s
戻り値: とりあえず
protected virtual PortKey ConvertStringToPortKey(string s)
result = graphLinksModelLinkData.ConvertStringToPortKey(s)
文字列をキー値に変換します。
- s
戻り値: とりあえず
public virtual void LoadFromXElement(XElement e)
graphLinksModelLinkData.LoadFromXElement(e)
このリンクデータをXElementのLinqで保持したデータで初期化します。
- e
- XElementの特長
public virtual XElement MakeXElement(XName n)
result = graphLinksModelLinkData.MakeXElement(n)
このリンクのデータを保持するXML XElementのLinqを構成します。
- n
- 新しいXElementの名前
戻り値: 初期化XElement
public virtual void OnPropertyChanged(ModelChangedEventArgs e)
graphLinksModelLinkData.OnPropertyChanged(e)
Raise the PropertyChanged event.
- e
protected void RaisePropertyChanged(string pname, object oldval, object newval)
graphLinksModelLinkData.RaisePropertyChanged(pname, oldval, newval)
プロパティセッターからPropertyChangedイベントを上げるためのメソッドを呼び出します。
- pname
- プロパティ名
- oldval
- プロパティがセットされる前の値
- newval
- 新たな価値
public override string ToString()
result = graphLinksModelLinkData.ToString()
デバッグには、このオブジェクトのデフォルトテキストレンダリングとして、From と To プロパティを使用します。
戻り値: "Node1 --> Node2" のような文字列
イベント
public event PropertyChangedEventHandler PropertyChanged
graphLinksModelLinkData.PropertyChanged += handler
このイベントでは、モデルと依存オブジェクトの両方がプロパティ値の変更を通知できるように、@INotifyPropertyChangedインターフェイスを実行します。