2011-12-21 3 views
0

私の.NET Windowsアプリケーション用の直感的なツリービュー構造(マインドマップの同様の行に)を作成したいWPF)。.NETでマインドマップベースのツリービューウィンドウベースのアプリケーションを作成する方法

thisと同様の行に何かまたはthis

は、私が最初に私のアプリケーションは、ちょうど可視化のような心-マップを作成し、それを表示するには、根本的な構造化されたXMLを読み込み、前記サンプルアプリケーションを開発することを計画していますユーザー。ユーザは、表示されたツリーノードのいずれかを選択することができる。ノードに子ノードがある場合は、ユーザーが対応する親ノードをクリックしたときに表示されます。

これを達成するには、頭を上げたり、まず正しい方向に手助けしなければなりません。どんな助けもありがとうございます。

+0

商用ライブラリを使用することはできますか?もしそうなら、http://www.nwoods.com/components/silverlight-wpf/goxam-overview.htm – Josh

+0

あなたのinput.Iのためのジョシュ..おかげで、間違いなく市販の代替品を使用することができますが、私はより興味があった同じものを開発するので、「どこから始めるか」などの指示を入力する必要があります。 –

答えて

0

私はWPFでは前からネットワークマップを作成しましたが、マインドマップは作成していません。それは簡単ではなく、すべてのステップを説明するために数ページを要します。そこで私はネットワークマップをどのように達成したかを以下に簡単に説明しました。私は、ノードとノードのコネクタのレイアウトや視覚的表現以外に大きな違いはないと思います。

最初はあなたのコレクションです。 MSDNには、ここで利用可能なキラーのDirected Graphコレクションがあります:http://msdn.microsoft.com/en-us/library/ms379574(v=vs.80).aspx

コレクションが確立されたら、レイアウトを実行できるようにPanelクラスを拡張する必要があります。既存のマインドマップレイアウトパネルはわかりませんが、ここにはラジアルパネルレイアウトへのリンクがあります:http://msdn.microsoft.com/en-us/library/ms771363(v=vs.90).aspx。カスタムレイアウトに配置するために必要な手順が表示されます。

また、有向グラフノードを視覚的に表現する方法も必要です。 WPFについての美しい点は、独自のUserControlを作成することができ、パネルが適切にレイアウトされるように作成されていれば、カスタムコントロールのすべてのレイアウト作業が実行されることです。私のネットワークマップは、バックグラウンドとして楕円形のUserControlであり、Radial Panelに投げられました。

最後のステップは、グラフのコレクションを調べ、接続されたノード間にコネクタを描画する機能です。私の有向グラフコレクションでは、Tagというタイプのオブジェクトのプロパティを追加し、ノードのUserControlバージョンを格納しました。この方法で、私は接続されたUserControlの座標を知っていて、PolyLineとそれらを接続することができます。あなたの違いは、コネクターをImageとしたいと思うことです。

これはクイックバージョンです。私はここにソースコードを掲載して、より多くの情報を掲載したいと思っていますが、仕事用に書いたので、彼らは私を殺すでしょう。

+0

あなたの最後の文章は面白く聞こえます:-)簡単なプロトタイプを構築するために必要な労力について概算できますか? –

関連する問題