問題タブ [dockpanel-suite]
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.
c# - 完全に管理された WeifenLuo(DockPanel Suite) の代替品または実装のヒントを探しています
Windows、Linux、Mac の .NET と Mono の両方で動作する WeifenLuo の代替品が必要です。できれば MIT ライセンスでライセンスされています。API が WeifenLuo の API に似ていればありがたいのですが、そのような API が利用できない可能性があることは理解しています。
また、Googleで何も見つからなかったので、これは存在しない可能性があると思います. この場合、これを実装する方法に関するヒントが欲しいです。
私は Windows.Forms の経験がある程度 (あまりありません) ありますが、P/Invoke を使用してはなりません。ウィンドウの動きを検出する方法と、指定された位置とサイズで縁なしの半透明のウィンドウを作成する方法は既に知っています。
だからここに私が直面しているいくつかの問題があります:
- WeifenLuo は複数の左/右/上/下のペインをサポートしているため、サイズを変更して複数のパネルを含めることができます。
- 分割可能なタブもサポートしています。
始める前に知っておくべきことは他にありますか? 利用可能な同様のオープンソース プロジェクトはありますか?
c# - すべての子コントロールに対してドラッグアンドドロップを有効にする方法
私の状況は次のとおりです。DockPanelSuiteと画面全体をカバーする多くのコントロールを備えたwin-formsアプリケーションがあります。
WindowsエクスプローラーからアプリケーションへのファイルのD&Dを有効にしたい。D&Dの実装方法は知っていますが、メインの親フォームで有効にすると、アプリケーションのタイトルバーとタスクメニューアイコンのみがD&Dの変更を反映しているようです。
フォーム全体でエクスプローラーからのファイルを受け入れるようにします。アプリケーションに表示される各トップコントロールのファイルのD&Dを有効にする必要がありますか?
これを実装するためのより良い方法があると確信しています、助けてください?
明らかにする
ユーザーがWindowsエクスプローラーからフォームにファイルをドラッグするとき、フォーム内のすべての場所にそのようなイベントのフィードバックを提供してほしいと思います。エクスプローラーからVisualStudioにファイルをドラッグできるのと同じように、どこにドラッグしてもかまいません。アプリケーションはファイルを受け入れます。
c# - 継承されたフォームのコントロールにアクセスするにはどうすればよいですか?
WinFormsアプリでDockPanelスイートを使用しています。DockContentクラスはSystem.Windows.Forms.Formクラスから派生し、私の2つのフォームdockRoundsとdockToolboxはDockContentクラスから継承します。
これは私がこれを行うのは初めてであり、これはおそらくばかげた質問ですが、実行時に、dockRoundsおよびdockToolboxフォームのコントロールにアクセスするにはどうすればよいですか?
アプリを最初に実行するときに2つのフォームを読み込む方法は次のとおりです。
public partial class frmMainNew : Form
よろしくお願いします
レディー
c# - サードパーティのアプリにドッキングできる無料のドッキング コントロール
CodeJock で AxXtremeDockingPane を使用してドッキング可能なパネルをアプリケーションに追加するアプリケーション (私のものではない) があります。
AxXtremeDockingPane には呼び出されるメソッドがAttachToWindow(int handle)
あり、呼び出されると、提供されたハンドルを使用してウィンドウにドッキング マネージャーを作成します。これは任意のアプリケーションである可能性があります。
同じことを可能にする無料/安価なドッキング コントロールが他にあるかどうか疑問に思っていましたか?
私がやろうとしているのは、メイン アプリケーション (私のものではない) は、アプリケーションの実行時にメイン ウィンドウにドッキング マネージャーを作成しますが、AxXtremeDockingPane プライベートにアクセスしたことです。つまり、独自のパネルをメイン アプリケーション ウィンドウに追加することはできません。問題は、新しい AxXtremeDockingPane を作成しようAttachToWindow(int handle)
として、メイン アプリケーションまたは子ウィンドウへのハンドルを使用して呼び出すと、ドッキング マネージャーが既に存在するため、MemoryAccessViolation がスローされることです。
同じことができる別のスイートを見つけたいので、メイン ウィンドウに新しいドッキング マネージャーを作成して、メイン ウィンドウに AxXtremeDockingPane と {other control} を配置します。
申し訳ありませんが、説明するのは少し難しいです。
私がこれを行う方法を知っているか、それを行うツールを知っている人はいますか?
c# - DockPanel Suite:ドキュメントタブの場所を開きますか?
WinFormsのユーザーインターフェイスを改良して、Weifen Luo DockPanel Suiteを使用します。古いUIにはタブがなかったため、新しいウィンドウがドキュメント領域にドッキングされたときに、バルーンツールチップを表示してユーザーに通知します。ドキュメントを取り除いて、好きな場所にフロートさせます。
これを行うには、ドッキングされたウィンドウのタブの場所をプログラムで決定できる必要があると思います。DockPanelのDocumentStyleはDockingWindowに設定されているため、「ドキュメント」領域にドッキングされているすべてのウィンドウのタブが常に表示されます。
何か案は?
delphi - Delphi / C ++ Builderのドッキングライブラリに関する推奨事項はありますか?
私のチームは現在、既存のMDIベースのアプリケーションをより最新のドッキングベースのアプローチに移行することを考えています。私たちはまだ考えていますが、VS2010のドッキングと視覚的な外観のようなものに移動したいと思います:
これには次の機能があります。
- ウィンドウがドッキングするブレンドされたアウトラインを表示します
- タブにドッキングするだけでなく、並べて配置する
- ドックの位置を示す画像上でドラッグアンドリリースすることでドッキングを許可します(以下ではこれを「ドッキングウィジェット」と呼びます)
- 見た目もかなり良い(テーマ/ UIに関して)
RAD Studio 2010で使用する高品質のドッキングライブラリを見つけるのに苦労しており、見つけていないライブラリ、または見つけたライブラリを使用してこのようなことを実現する方法についてアドバイスを求めています。
- 更新:AutomatedQAのドッキングライブラリを購入することになりました。最高だと思います。詳細については、以下のセクションをご覧ください。
- 更新2、2011年7月:この質問では、Delphi / C ++ Builderで使用可能なすべてのドッキングライブラリを調べたので、最新の状態に保とうとしています。私が知っている2つの変更:
- 現在AutomatedQAを所有しているSmartBearには、使用済みのAutomatedQAのドッキングライブラリがあります。これは私が購入することをお勧めしたものです。彼らはそれをオープンソーシングすることを検討しています。
- 私がDevExpressドッキングで抱えていた問題の1つは、VS2008 / 10スタイルのドッキングがサポートされていないことでした。ドッキングウィジェット、ドラッグしたときの透明なオーバーレイなど があります。現在、実装されています。このため、またAQDockingは販売されなくなったため、この質問をした場合、受け入れられる答えはDevExpressDockingを購入することです。
次のライブラリを見つけました。概要は次のとおりです。
内蔵VCLドッキング
これにより、フォームを他のフォームまたはTWinControlsにドッキングできますが、非常に基本的なように見えます。フォームは、XORペイントされたアウトラインを使用してドラッグします。これは、VistaおよびWin7では非常にうまく機能しません。タブ付きのドッキングされたフォーム用のTTabDockSetコントロールがありますが、ドッキングされたフォームのタイトルがドッキングされた後のレンダリング方法を制御する方法がわかりません。ドッキングを並べて実装するには、手動で実行して、新しいドックサイトパネルをその場で作成する必要があると思います。RAD Studio IDEのドッキングウィンドウは、これよりも少し滑らかです(たとえば、フォームをドラッグするときの透明な長方形)。これは、VCLドッキングサポートを使用していると思ったため、奇妙なことです。
JVCLドッキング
これは、組み込みのVCLドッキングよりもまともなソリューションのように見えます。任意のエッジまたはクライアントでのドッキングをサポートし、フォームがドッキングする場所にアルファブレンドされた長方形を表示します。
かなりバグがあるようで(最初のフォームの上に2番目のフォームをドロップすることは許可されていますが、プログラムがフリーズします)、タブ付きドックのサポートやドロップロケーションウィジェットは組み込まれていません。
LMDドッキングパック
これは有望に見えます。フォームを直接ドッキングしているようには見えませんが、ドッキングパネルがあり、その上にコントロール/フレームが配置されています。既存のフォームをフレームに移行できます。また、ドッキングウィジェットとタブ付きドックのサポートもあります。
ただし、デモは非常に信頼性が低いようです。最新の評価バージョンをインストールしました。ドックサイトといくつかのパネルを使用して新しいプロジェクトを作成し、[実行]を押すと、次のようになります。
これは、フォームコンポーネントストリーミングでクラッシュしています。DFMファイルを視覚的に調べても問題はありませんが、それを引き起こしている可能性のあるレイアウト情報の不透明なバイナリブロブがあります。これは、評価バージョンでは特に推奨されません。
DevExpress ExpressDocking
私はこれに大きな期待を抱いていました。これまでDevExpressコントロールを使用したことはありませんが、評判は良いです。しかし、彼らのデモプログラムは本当にがっかりしました:
コントロールがちらつき、XPスタイルを使用していても、Windowsではテーマがうまく機能していないようです。タブ付きドッキングはありますが、XOR化されたアウトラインを使用します。これはXPまたはVistaではうまく機能しません。また、ドッキングウィジェットもありません。率直に言って、WindowsXPの時代から更新されていないようです。2011年7月の更新: これは改善されています。
AutomatedQA/SmartBearドッキングライブラリ
これは、これまでのすべてのライブラリの中で最も有望です。
私は定期的にAQTimeを使用しています。これは、独自のドッキングライブラリを使用して作成されているように見える優れたプロファイラーであり、うまく機能します。ただし、ドッキングライブラリの試用版のダウンロードの最新バージョンはRAD Studio 2009用であり、2010にインストールする場合のアドバイスは、サポートされていないため、ソースを再コンパイルする必要があるということです。デモにはソースが付属しておらず、RS2009もありません。インストールしない限り、インストーラーはインストールを拒否します。インストールするように管理したとしても、再コンパイルする必要があるため、使用できません。存在しないソース。
私は彼らのサポートチームと連絡を取り合っており、彼らは私にこのスレッドを教えてくれました。私はまた、顧客がほとんど同じことを求めている別のスレッドを見つけました。私は返信しました、そしてより良いニュースを聞くことを望んでいます。特にIDEでサポートされていない場合は、評価できない製品を購入することをお勧めしません。
更新:私はこのライブラリを購入することになりました。評価に問題があるにもかかわらず(D2007で動作し、そのコピーを持っていました)、すべてのライブラリを使用するのが最も簡単で、最も強力であるように見えます。たとえば、テーマを作成するのは簡単です。ドッキングライブラリも選択する必要がある場合は、絶対にお勧めします。
2011年7月の更新: このライブラリは現在販売されていませんが、まもなくオープンソースになる可能性があります。
私は何を逃しましたか?
それが私がこれまでに見つけたすべてです。今何?
- Delphi / C ++ Builder / RAD Studio 2010用の優れたドッキングライブラリを見逃したことがありますか?
- これまでに見たライブラリの機能を見逃したことがありますか?「FooBarを見逃しました」や「JVCLには確かにドッキングウィジェットがあり、そのように使用できます...」などの回答を聞くと、かなり素晴らしいでしょう。
- 次のステップとして何をお勧めしますか?
ご入力いただきありがとうございます:)
vb.net - VB の DisposedObjectException
SourceForge のDockPanel Suiteを使用しています。ドキュメントを開いて閉じ、もう一度開くと、「破棄されたオブジェクトにアクセスできません」というエラーが表示されます。これが起こらないようにするにはどうすればよいですか?
c# - Weifenluo Dock Panel Suite: デザイン サイズを使用してウィンドウをフロートしますか?
Weifenluo Dock Panel スイートを使用して、フローティング ウィンドウに (Dock Panel Suite のデフォルト サイズではなく) デザイン サイズを使用させるにはどうすればよいですか?
ヒント: SF.net の Dock Panel Suite フォーラムから提案を試みましたが、うまくいかないようです。
vb.net - DockPanelSuiteで現在のタブ/ドキュメントを取得する
私は小さなプロジェクト(webbrowser)でWeifenLuoのDockPanelSuiteを使用しており、タブを作成して各タブ内のwebbrowser要素をナビゲートできるようになりました。
しかし、ページが別のサイトに移動しているときに、タブのタイトル/名前を変更するにはどうすればよいですか?
基本的には、現在のタブフォームに入る必要があります。
c# - DockPanel Suite を使用して DockContent を DockPane に追加する方法
タイトル通り。
たとえば、複数のユーザーリストを持つマルチ チャット ルームがあります。すべてのユーザーリストを右側のドックに追加しました。
問題は、ユーザーがユーザーリストを下部ドックに変更した場合でも、右側のドックに追加することです。
ユーザーが場所を変更しても正しい場所に追加されるように、ペインにコンテンツを追加するにはどうすればよいですか?
WeiFenLuo の DockPanel Suite の gd ドキュメントがある場所はありますか?