问题标签 [gridsplitter]

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 投票
2 回答
9352 浏览

wpf - 具有最小约束的 GridSplitter

我想要一个有两行和它们之间的分隔符的网格布局。行的最小高度应为 80 像素。

这段代码很好用:

但我希望顶行具有自动高度,直到用户使用拆分器手动更改它。所以我把代码改成这样:

还有一个问题。拆分器仍然满足行约束,但如果我将拆分器拖得太低,它会开始无限增加顶行的高度。这导致底行完全低于窗口的底部边框。

我在 GridSplitter 代码上做了一些反射器,如果行具有自动或星形高度,它会使用不同的逻辑。

有什么建议我该如何“修复”它?

0 投票
1 回答
1685 浏览

wpf - 为保存 WPF GridSplitter 的位置而序列化什么参数?

我想保存GridSplitter用于分隔两个网格列的位置。

我应该序列化什么?Width拆分器之前的列?分离器的Left属性?它单独序列化的窗口本身的大小和位置。

0 投票
1 回答
415 浏览

wpf - VS2010 WPF 设计器自动将 Horizo​​ntalAlignment="Stretch" 添加到 gridsplitter

我有一个奇怪的问题,每当我打开一个 XAML 文件,其中包含一个内部带有 GridSplitter 的 Grid,并且 XAML 设计器运行时,它想要将属性 Horizo​​ntalAlignment 添加到 GridSplitter 并将其值设置为“Stretch”。

如果我将 VS2010 设置为不使用设计器,则不会添加属性并且代码保持不变。虽然我并不总是使用设计器,但在需要时使用它很好。但是,通过设计器,每次都会自动进行不需要的更改。它强制将文件从源代码安全中签出,这简直是一团糟。

有没有人遇到过这种情况?看起来非常奇怪和具体,但我在网上找不到其他人抱怨同样的情况。

0 投票
1 回答
242 浏览

wpf - 延迟的 WPF GridSplitter

大家好,有谁知道您是否可以以与 scollviewer 相同的方式调整延迟 GridSplitter 的大小,
例如

0 投票
1 回答
9820 浏览

wpf - WPF GridSplitter - 保存和恢复位置并按比例拆分

我正在创建一个 3 列 UI,列之间有网格拆分器。我需要保存列的状态,这样如果用户关闭并重新打开应用程序,它看起来就像他们离开它一样。但我也试图让列按比例拆分——我的意思是,如果你拉伸窗口,所有三个面板都会增长,如果你移动左拆分器,它会改变左列和中间列之间的划分。

我目前只实现了第一个要求 - 它保存了列宽的状态。我还让列强制所有三列的最小宽度。但据我了解,告诉拆分器按比例拆分的方法是使用星号大小的列宽。因为我已经在使用 Width 属性来保存和恢复状态,所以我不确定我能否完成我想要的。

有没有人设法保存列宽的状态并让拆分成比例?

这是我目前所拥有的一些代码:

对于 LeftColumnMaxWidth 和 CenterColumnMaxWidth,我都有 double 类型的依赖属性。并且 rightPanel_SizeChanged 处理程序以及窗口加载处理程序都调用此方法:

我还有一些工作要做,以确保调整窗口大小不会剪裁正确的列。我认为该解决方案可能与尝试使拆分器按比例拆分有关。我当前设置的特别特殊的行为是左拆分器调整左右列的大小,并保持中心列的大小固定。

我不怕处理 SizeChanged 或 DragDelta 来实现我的目标。但我认为我不能做的实际上是设置前两列的 Width 属性,因为这会破坏我与保存状态的用户设置的绑定。

预先感谢您的任何帮助。

0 投票
1 回答
3256 浏览

wpf - Wpf GridSplitter 替换 row.height 属性上的绑定

我很难使用网格拆分器。我已将RowDefinition.Height依赖属性绑定到模型的 clr 属性,如下所示。

这工作正常,直到GridSplitter使用。当使用 手动更改行高时GridSplitter,它将用新的固定大小替换绑定(并删除绑定)。

您是否有任何想法或解决方法如何创建两行可以使用 GridSplitter 调整大小但仍根据 clr 属性/绑定更改它们的高度?

0 投票
1 回答
1229 浏览

wpf - WPF - 在 GridSplitter 上绘制文本

我声明了这个 Grid Splitter:

它是一个垂直网格拆分器,我想使用 RotateTransform 绘制一些文本,以便文本从上到下运行。我无法让它工作。

0 投票
2 回答
26212 浏览

wpf - 组合扩展器和网格(可调整大小的扩展器)

我想要一个可调整大小的扩展器之类的东西。我的基本想法是这样的:

这个问题:如果我移动网格拆分器并折叠扩展器,我会得到一个很大的空白区域。怎样才能让整列崩溃?还是有另一种方法可以使扩展器“可调整大小”

0 投票
2 回答
7011 浏览

c# - 以编程方式设置网格内列的宽度

是否可以在 Silverlight 中为 Grid 设置列的宽度?我有一个包含两列的网格(不是网格视图)。A 列和 B 列。我想要完成的是当用户单击 ColumnA 中的按钮时,ColumnA 的宽度设置为 0.01。然后 ColumnB 应扩展网格的整个宽度以填充剩余区域。类似于固定或取消固定停靠面板的方式?

这是最好的方法还是我应该回到停靠面板并让 SL 处理它?与使用 RAD 控件相比,我更愿意自己管理它,因为我认为对于这样一个看似简单的小任务来说它有点臃肿。

我的另一个想法是使用gridsplitter,但我不确定如何使用gridsplitter以编程方式折叠或展开列?因此我现在的困境。任何建议将不胜感激。

提前致谢

0 投票
1 回答
4187 浏览

wpf - 如何设置 GridSplitter 'pane' 的初始高度?

我在我的 WPF 窗口中使用 GridSplitter。拆分器上方是 TreeView,下方是 DockPanel,其中包含一个文本框。当我在 TreeView 中选择一个项目时,DockPanel 的内容会通过数据绑定进行更新。

根据 TextBox 的内容,窗口的下部窗格的大小会扩大和缩小。我希望它从高度 X 开始,并保持在该高度,除非用户拖动 GridSplitter。

我尝试在 XAML 中设置下部 DockPanel 的高度,但这修复了 DockPanel 的高度,以便在移动 GridSplitter 时它不会调整大小。也许解决方案涉及 Grid.Row 高度?

这是我的页面的一般结构。

顺便说一句:在我拖动 GridSplitter 之后,调整大小停止发生,并且 UI 的行为符合我的要求。