問題タブ [avalondock]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
4302 参照

c# - AvalonDock (2.0) + MVVM + VSPackage = ドキュメント選択の問題?

DockingManager基になるビュー モデルによって管理される一連のドキュメントを表示するために、AvalonDock (2.0) コントロールを利用するコントロールがあります。

ドキュメント ビュー モデルにはIsSelectedプロパティがあり、ビュー モデルが選択されているときに、ドキュメントを選択して表示したいDockingManager。これを行うために、次のようにStyleforを更新しました。LayoutItem

このアプローチは、コントロールが WPF アプリケーション内でホストされている場合は正常に機能しますが、コントロールが VSPackage 内でホストされている場合、ビュー モデルでドキュメントを選択しても、選択したドキュメントが表示されないことがよくあります。以下の画像では、ユーザーが Customer ノードをクリックして編集しましたが、顧客ドキュメントは表示されませんでした。

AvalonDock の問題

ビュー モデル レイヤーはIsSelected期待どおりに設定されており、コントロールが を使用するTabControlと、選択したドキュメントが常に一番上に表示されました。

AvalonDock 内の問題のようです。私が見つけているのはLayoutItem、ビューモデルを介して a が選択されている場合、リストの最初のドキュメントがレイヤーで true に再選択され、レイヤーでトリクルアップして true にLayoutDocument/LayoutContent/LayoutElementリセットされることです。レイヤーでビューモデルにバインドしたいのですが、そのレイヤーにはありません。IsSelectedLayoutItemIsSelectedLayoutDocument/LayoutContent/LayoutElementDependencyProperty

ビューモデルにバインドする別の方法を試しましIsSelectedたが、これまでのところ成功していません。他の誰かがこの問題に遭遇しましたか? 回避策やその他のアプローチを知っていますか? ドキュメントの選択を行うためだけに、非 MVVM アプローチを使用する必要はありません。

編集: VSPackage を使用しても、再現テスト ケースを作成するのが難しいため、この問題はわかりにくいようです。ToolWindowデュアルs と Mediator メッセージを使用して実際のコントロールをシミュレートする次のテスト ケースでは、ドキュメントの選択は正常に機能します。

ツールウィンドウ

このテスト ケース (WPF アプリと VSPackage を使用) はこちらから入手できます( をクリックしTools=>My command nameてツール ウィンドウを起動し、1 つのウィンドウにドキュメント タイトルを入力して選択するか、ウィンドウでドキュメントを作成して選択しますDockingManager)。

0 投票する
1 に答える
11056 参照

c# - AvalonDock DockingManager がレイアウトをロードしない

レイアウトを保存してロードするために、こちらの手順に従いましたが、うまくいきませんでした。

私はこれXAMLを中に持っていMainWindowます:

ボタン クリックのイベント ハンドラーは次のとおりです。

ウィンドウが表示されたら、「テスト」ファイルの内容を保存をクリックします。

ここで問題が発生します。読み込みボタンをクリックすると、ドキュメントとアンカー可能なものが消え、ウィンドウに表示されるのは 2 つのボタンと、レイアウトがあるはずの空の四角形だけです。この時点で保存ボタンをクリックすると、これが「テスト」ファイルに書き込まれます。

AvalonDock 2.0.1746.0 を使用しています。誰でもそれを修正する方法を知っていますか?

0 投票する
1 に答える
1325 参照

wpf - WPF。テンプレート セレクターでのコントロール間のバインド

WPF アプリケーションのデータ バインディングに問題があります。状況は次のとおりです。

2 つのコントロールがあります。1 つはツリー ビューで、もう 1 つはリストで選択された項目の詳細ビューです。次のコードですべてが機能していました(バインディング):

選択した項目は、詳細コントロールの依存関係プロパティでした。

現在、Avalondock を使用してレイアウト戦略を変更しています (コード内の avalonDock タグからわかるように)。これは、テンプレート セレクターを使用することを意味します。レイアウトは正しく機能しますが、バインドが壊れています。テンプレート内の各コントロールを含む実際のコードは次のとおりです。

バインディングを更新して再び機能させるにはどうすればよいですか? FindAncestor を試してみましたが成功しませんでした。

編集:

最終的に解決しました。ディーン・チョークが言ったように、私の戦略では私の目標は達成できませんでした。何度か頭を悩ませた後、データモデルをリファクタリングしました。これで、ツリー ビューと詳細ビューを含むビュー モデルができました。AvalonDock 2.0 MVVM サンプルの構造に従っています。

サンプルはこちら

0 投票する
1 に答える
1108 参照

wpf - avalonDock はドッキング中にコンテンツをアンロードします

AvalonDock は、ウィンドウがドッキングまたはドッキング解除で操作されるたびに、ドキュメント ウィンドウのコンテンツをアンロードおよび再ロードするようです。それをオフにすることは可能ですか?

私の場合、ライブ ビデオ ストリームを表示していて、ウィンドウがフロートまたは再ドッキングに設定されている間、再生し続ける必要があります。

また、AvalonDock 2.0 のドキュメントは完全ではないようです。たぶん、私は間違った場所を探しています。codeplex で見つけたのは、AvalonDock 2.0 入門ガイド PART 1 だけです。

0 投票する
1 に答える
3302 参照

c# - Avalondock LayoutDocument のタブ幅を設定する方法

LayoutDocument に表示されるタブには、AA、AB、AC などの短いタイトルが付いています。したがって、それらのタブのサイズは比較的小さいです。

タブの固定幅を手動で設定する方法はありますか?

ここに画像の説明を入力

0 投票する
1 に答える
1503 参照

wpf - AvalonDoc 2 の垂直方向と水平方向

このデザインを実装する方法を知りたいです。この要素が理解できません。

この写真では、要素を下に描きました

http://gyazo.com/f89ea3cc4ec8827173726be9c4c186a7

0 投票する
2 に答える
3509 参照

c# - AvalonDock 2.0 を使用して自動非表示なしで下部パネルを作成する方法は?

AvalonDock 2.0 を使用しています

かなり基本的なものだと思いますが、ドキュメントには何も書かれていないので、2時間遊んで理解しようとしました。ですから、これが単純すぎる場合は申し訳ありません。

タイトル通りのものが欲しい。ドキュメントには、下側のパネルの作成方法が記載されていますが、自動非表示のパネルのみであり、これは私が望んでいるものではありません。

コードビハインドで自動非表示を切り替えようとしましたが、高さは影響を受けなかったので、アプリケーションを起動するたびに、ユーザーはそれを上にドラッグしてパネルのコンテンツを表示する必要があります。