问题标签 [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.

0 投票
1 回答
2050 浏览

c# - DockPanel Suite - DockContent 可见性

一个表单包含一个 DockPanel 和一个 DockContent 实例,该实例具有 DockState=DockState.DockBottomAutoHide 并且它充当记录器视图 - 就像 Visual Studio 的错误列表面板。因此,当将日志记录事件添加到日志列表时,DockPanel - 如果不可见 - 以下列方式显示:

但如果用户已经可以看到 loggerContentPanel,则 Show 方法会使面板“闪烁”。如果对用户可见,是否有任何方法可以使用 DockState = DockState.DockBottomAutoHide 获取 DockContent 的状态?IsHidden 或 Visible 属性没有太大帮助。

0 投票
1 回答
4174 浏览

c# - 以编程方式调用 DockPanel-Suite 的“AutoHidden”DockContent

我无法让“自动隐藏”停靠栏以编程方式出现。

在网上找不到任何答案,尽管下面的SO Question建议.Show()应该可以解决问题

我已经在最新的NuGet 版本的代码上尝试过这个。

我的测试代码如下。

有人知道该怎么做吗?或者我做错了什么?

更新:显然这是 2.7.0 中的一个错误,我已经为该项目打开了一个问题。@roken 的回答是一个很好的解决方法,所以我更新了下面的代码以反映它。


我的测试代码

创建一个简单的 Visual Studio Windows 窗体应用程序,并将主窗体的源文件内容替换为以下代码:

这是代码中不起作用的部分:

我已经用@roken 的建议替换了它,现在它可以工作了:

0 投票
1 回答
3418 浏览

c# - DockPanelSuite 的 DockState 和 AutoHide

使用 DockState 和 AutoHide,我正在寻找以下内容:

  1. 查明 DockContent 是否处于自动隐藏模式
  2. 能够在“常规”和自动隐藏模式之间切换。
  3. 当 AutoHide Dock 进入视野时触发事件。
  4. 当 AutoHide 停靠栏“离开”并且现在停靠回其选项卡时触发事件。

回答维基:

  1. IsAutoHide - 得到:

    /li>
  2. IsAutoHide - 设置:还没有代码 - 基本上遍历模式或使用可互换模式的字典(即 DockBottomAutoHide 到 DockBottom)

  3. 我不知道,但这看起来很有趣,可能有这个想法。

  4. 我不知道。
0 投票
1 回答
3827 浏览

c# - 从 XML 加载 WeifenLuo DockPanel Suite 布局

我目前正在开发一个实现 DockPanel 套件的项目,现在我正在尝试从 XML 文件加载用户的布局。DockPanel 对象具有方法LoadFromXmlSaveToXml. 保存到 XML 相对简单。

我不确定如何重新加载布局,是否需要再次初始化所有组件以及是否需要将它们添加回表单。任何帮助将不胜感激,因为在线帮助很少。我也不能从样本中得到很多东西。

谢谢

0 投票
1 回答
669 浏览

vb.net - 处理事件 - 表单/控件不更新?

首先,我不是全职从事 winform 开发工作,所以不要抨击我太糟糕......

正如标题所描述的那样,在引发和捕获事件后刷新表单上的控件时遇到问题。

在“Form1”上,我有一个 Dockpanel,正在创建两个新表单,如下所示:

在 frmGraphTools 类中,我定义了以下委托、事件和按钮单击事件:

在 frmGraph 类中,我定义了以下子:

我在 frmGraph 表单上有一个 ZedGraph 控件,它应该在单击 frmGraphTools 上定义的按钮时刷新/重绘。一切似乎都正常,frmGraph 中的 RefreshGraph Sub 正在执行,新数据被推送到 ZedGraph 控件中,但是该控件永远不会更新。必须做什么才能使 frmGraph 表单或 ZedGraph 控件正确更新/刷新/重绘?

0 投票
1 回答
995 浏览

dock - 关闭 DockContent 文档后的 DisposedObjectException

DockPanelSuite当我关闭文档时,我看到了如此奇怪的行为。当我单击'X'文档右上角的关闭时,顶部文档按预期关闭,(calls FormClosing event and Dispose() method of my derived DockContent class)但文档中仍保留一个小标签。这就像DockContent意识到应该丢弃内容并放弃所有内部控件,并且 Form.Text 从选项卡中消失了,剩下的是一个没有任何文本的小选项卡。

进一步尝试再次关闭选项卡或单击选项卡会导致'ObjectDisposedException'.

这是我的环境规格:

下面是一个堆栈跟踪。进入代码我可以看到它在尝试获取IDragSource.DragControl我已经处理的控件的实例时爆炸了

提前感谢您的帮助。

除了这个小问题,我对图书馆非常满意。

0 投票
1 回答
317 浏览

c# - 验证 DockPanel 的 XML 布局

我在为 DockPanel 加载损坏的 xml 布局时遇到了一些错误,因此我尝试编写一个函数以确保在加载 xml 布局之前它是正确的LoadFromXml。是否有任何 XSD 文件用于验证从 DockPanel 保存的 XML?

谢谢你。

0 投票
2 回答
1463 浏览

c# - Dockpanel Suite 和跨多个表单传递数据

嗨,我找不到任何引用我正在寻找的东西的东西。我在两种形式之间传递数据的网站上看到了很多例子,例如

如何将值从一种形式传递到另一种形式? 将一个窗体的控件用于另一个窗体 如何访问继承窗体上的控件?

在几个博客和几个小时的阅读之上,却没有得到它。

所以基本上这是我试图使用 DockPanel Suite 完成的行为


主窗体parentForm 有一个Form1停靠在里面的窗体,它总是在那里。不能被删除或重新加载是恒定的(所以我会假设总是相同的实例),它有一个 textbox frm1BoxparentForm有一个带有按钮的菜单栏,该按钮button1将打开第三个表单Form2,该表单也有一个文本框frm2Box。我希望能够单击button1(从parentForm)将其打开Form2并将其中的任何内容传递frm1Boxfrm2Box.


因此,从阅读看来,设置属性似乎是每个人都推荐的,所以这就是我所做的,如果我只是通过单击 form1 的按钮来打开 form2 并传递数据,它会很好用,但我似乎无法弄清楚什么时候添加另一个表格。这显然不是我的完整代码,如果需要它只是为了节省空间,我很乐意发布我的实际代码。

我想我完全错过了这个概念,但在我的搜索中找不到一个“好”的例子,或者至少找不到一个我可以遵循的例子。我是编程新手,尤其是 C#,所以请原谅我的经验不足。如果有人有更好的方法,请告诉我。我考虑过使用 SQL 来存储数据。如果可能,我宁愿不使用基于文件的存储。另外值得注意的是,一旦我找到了正确的方法,它就需要是可扩展的,因为当我实际实现它时,parentForm 上将有 5 个不同的按钮打开 5 个不同的表单,但仍然从同一个 Form1 中提取数据form1 将有大约 10 个文本框要提取的数据。

提前感谢您的任何回复。

0 投票
1 回答
565 浏览

c# - ElementHost 中的 WPF 内容使用 DockPanel Suite 不可见

我在 WinForms 表单的 ElementHost 中有一个 WPF 控件。我已将表单添加到 DockPanel Suite 窗格。当窗体浮动或停靠在左/右/顶部/底部时,WPF 内容正确显示,但当 DockState 为 Document 时,WPF 内容消失,留下空白停靠窗体。

我已经尝试过创建空的测试 WPF 控件,每当在 WinForm 上使用 ElementHost 并使用 DPS 停靠时,就会发生这种行为。谁能建议在哪里寻找修复?我已将 WPF 渲染设置为仅软件,但这对解决此问题没有帮助。

非常感谢。

WinForms 应用程序在 MacBook Pro 上的 VMWare Fusion 上使用 Windows 7 上的 .NET 4.0、VS2012。

0 投票
1 回答
451 浏览

c# - 始终在 DockPanel 上显示 DocumentTabStrip

导致我出现问题的行为是用户拆分DockPanel多个DockContent文档时。如果用户随后希望移动或关闭DockContent新面板上的部分是没有办法的。对我来说,最用户友好的方法是始终显示选项卡,即使面板部分只有一个对象。这可能吗?如果没有,有人有其他解决方案吗?

这就是我所说的。正如您在右侧看到的那样,无法移动或关闭该控件并取消拆分面板 没有可关闭或拖动的选项卡