问题标签 [docking]

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 回答
2692 浏览

c# - 如何以编程方式将 ToolWindow 停靠在 Visual Studio 插件中

我正在开发一个 Visual Studio 插件,它显示了一个类似于常用工​​具箱的工具窗口。现在我想在打开它时让它像普通的工具箱一样停靠。这是用于打开它的代码(_applicationObject并且_addInInstance是从 OnConnection 参数获得的 DTE2 和 AddIn):

在使其可见之前,我能够停靠此窗口,将其 IsFloating 属性设置为 false:

这几乎没问题,但是窗口停靠在主窗口的下部,您通常可以在其中找到输出、监视、调用堆栈和那种窗口。有没有办法强制它在您通常看到工具箱的左侧打开?

编辑:

我试图将我的窗口和工具箱窗口停靠在一起,创建一个 LinkedWindowFrame:

结果在某种程度上类似于我想要实现的,即工具箱和我的窗口停靠在一起,但生成的窗口是浮动的,而不是停靠在主窗口的左侧。

0 投票
1 回答
1756 浏览

wpf - 不填充高度的 WPF 固定选项

我正在寻找一个 WPF 选项,它在侧面显示面板,并允许您固定/取消固定它们。基本上这意味着一个窗口,主控件在中央,在该主控件的左右两侧有多个不同的面板。这些面板默认是折叠的,只有它们的标题可见,如果我将鼠标悬停在它们上面,它们会在主控件上展开(不取代主控件),但我也可以选择固定这个面板,它保持永久展开出,这一次强制主中心控件调整大小。

现在这听起来很像大多数停靠控制选项,而且我确实看过AvalonMixModes Synergy,但这些选项的问题是它们的面板填满了整个高度。当我将鼠标悬停在它上面时,我想要一个特定高度的面板出现,我不希望它填充到屏幕上,而且我真的找不到其他任何东西可以做到这一点。其他人见过这样的东西吗?

到目前为止,基本上我自己关于如何做到这一点的想法涉及以编程方式将面板从一个固定控件移动到另一个非固定控件,但这听起来很丑陋,我喜欢其他选择。

0 投票
2 回答
1355 浏览

c# - 如何使停靠面板超越另一个停靠面板

我有一个停靠在左侧的面板和另一个停靠在中间的面板。我左边的面板以 8 的宽度开始,然后滑开到 295。我需要它越过面板的顶部。它在做什么是将整个面板推倒?有没有办法让它越过面板顶部?

0 投票
1 回答
1326 浏览

windows - 从代码控制屏幕键盘位置上的 Windows 7

我的经理认为他看到其他人将屏幕键盘上的窗口“锁定”到他们的应用程序底部,有效地将其与他们的窗口对接,并希望我重现这一点。他们使用vb6,偶尔使用vb.net。

我已经在这个主题上进行了大量的谷歌搜索,我正在求助于查看 Windows SDK,但是如果有人可以通过确认这是不可能的或指向我来为我节省几天的痛苦如果是正确的方向,我将不胜感激。

0 投票
0 回答
2371 浏览

c# - 如何捕捉 AvalonDock 取消对接和对接事件?

我在 WPF 项目中使用 AvalonDock。我想知道如何处理对接和取消对接事件。我在拖动时尝试了 MouseDown 和 Up,但没有明显成功。

...

...

0 投票
1 回答
2288 浏览

user-controls - 如何将 UserControl 停靠到 FlowLayoutPanel 中?

我有一个 FlowLayoutPanel 和一个 UserControl。

我已将多个用户控件添加到 中FlowLayoutPanel,并且我试图将它们停靠在顶部,因此当我更改FlowLayoutPanel用户控件的大小(宽度)时会相应更改。

0 投票
0 回答
1247 浏览

delphi - 如何使手动对接无缝/隐形?

我正在尝试使用对接作为将(相关问题) a嵌入TForm到 a TWinControl(在本例中为 a TTabSheet)的替代方法。

用户根本不应该注意到有两种不同的形式。

如何避免停靠窗体顶部的关闭按钮和“拖动条”?

我的代码的简化版本:

PS:我不想使用 aTFrame这当然是另一种选择。

更新:

在这种特定情况下,我现在正在考虑使用TTabControl而不是TPageControl,因此我可以将所有控件放入主窗体中。

无论如何我都在使用 MVC/MVA,所以逻辑与 UI 是分开的。

0 投票
2 回答
1369 浏览

c# - C#对接控件库

我正在寻找适用于 NET 2.0 的 C# WinForms 的停靠控件库,它是免费软件,不使用任何 P/Invokes(因此它与 Mono 兼容)并且没有错误。WeifenLuo本来是最好的选择,但是因为它使用了大量的 P/Invokes,我永远无法让我的软件跨平台。

那么有什么好的建议吗?

0 投票
1 回答
2100 浏览

delphi - TForm.ManualDock 应该调用 onFormShow 吗?

当我输入这个问题时,我意识到它可能应该。

当 form.Create() 被调用和 form.ManualDock(pagecontrol,pagecontrol.alClient) 被调用时,将表单停靠到 TPageControl 调用 FormShow。

取消停靠表单也调用显示,我认为这是因为当您停靠/取消停靠时表单实际上是“重置”?

如果这是按设计的那样,我只会将我不想在那里触发的代码重构为 onCreate(除非那是糟糕的设计)。

0 投票
1 回答
257 浏览

infragistics - TabGroupPaneRegionAdapter,关闭后如何再次打开内容窗格

我正在使用 Infragistics 的 TabGroupPaneRegionAdapter 在 TabGroupPan 中显示 ContentPane 以具有对接功能。我不知道我做的是否正确。我遇到的问题是一旦从 TabGroupPan 关闭内容窗格。我不能再开始了。

我正在使用 MEF。我最初打开视图的方式是通过 RequestNavigate API。

我注意到的另一件事是,一旦 contentPane 关闭,就不会调用 OnViewsCollectionChanged。这是否意味着该地区仍然存在 View。如果正确,那么我应该能够再次导航它。