Tag: wrappanel

在包装面板中设置最大行数

我需要配置一个包装面板,我可以在其中设置最大行数或最大列数。 这是非常必要的,我正在使用WPF 4.0。 但是另一天,我是programmin Metro应用程序,我记得它的一个控件有这个属性,但在WPF中没有(直到我知道)。 在WPF 4.0中是否存在这样的控件? 或者我需要创建一个新的?

有没有办法自动占用WrapPanel中的空白区域?

WrapPanel的子项按顺序填充,如附加的屏幕截图。 因此,根据每个孩子的长度,面板会留出很长的空白。 我怎样才能利用空白区重新安排孩子们? 到目前为止,似乎只有少数人使用WrapPanel而且没有足够的例子。 这有什么自动方式吗? 或者我只需要制作自己的算法? WrapPanel在显示内容方面起着非常重要的作用,但显示空间有限。 谢谢 !

在WPF中指定WrapPanel的最大列数

我有一个WrapPanel,我想指定其列的最大数量。 因此,例如,当我的Collection“ObjectCollection”(绑定到此WrapPanel)仅包含4个元素时,WrapPanel将只有一行。 但是,当“ObjectCollection”将有5个元素时,wrapPanel将创建另一行来放置第五个元素。 (在这种情况下,我的Max_Columns_Number为4)。

将ObservableCollection项绑定到WrapPanel中的UserControl?

我可能只是遗漏了一些明显的东西,所以如果这是一个非常愚蠢的问题我会道歉。 我在视图中有一个WrapPanel,我需要绑定到ViewModel上的ObservableCollection。 此ObservableCollection包含一种不同类型的ViewModel,当在WrapPanel中显示时,需要将其绑定到另一种类型的视图。 目标是创建一个可以包装的项目列表,每个项目都通过一个较小的视图实例显示,该视图应该添加到WrapPanel中。 我正在使用MVVM,而ViewModel无法直接访问View。 如果可能的话,我宁愿不在ViewModel和View之间创建绑定,因此手动将项添加到WrapPanel.Children集合不是一个可行的选择。 我不知道如何将一个子ViewModel对象的集合绑定到WrapPanel,这样它将创建另一个视图的实例并将它们添加到自身。 我只是错误地解决了这个问题吗? 我认为可能涉及DataTemplate,但WrapPanel似乎没有DataTemplate,也不是可绑定的。 感谢您的任何见解。

WPF包装面板和滚动

我有一个简单的WrapPanel ,它包含许多宽控件。 当我调整Window的Width时,一切都按预期工作。 如果有足够的空间,控件将在一行上进行,或者如果没有,则控件将在下一行中包含。 但是,我需要发生的是,如果所有控件基本上都是垂直堆叠的(因为没有更多的水平空间)并且Window的Width更加减少,则会出现一个水平滚动条,以便我可以滚动查看如果我愿意,整个控制。 下面是我的xaml。 我尝试在ScrollViewer包装WrapPanel ,但我无法达到目标。 1 2 3 因此,如果将上述Window的Width减小到最小值,您将无法看到按钮的文本。 我想要一个水平滚动条出现,以便我可以滚动查看文本,但不会干扰通常的包装function。 谢谢。 更新:我已按照下面的保罗建议,水平滚动条现在按预期显示。 但是,我也希望垂直滚动可用,所以我设置VerticalScrollBarVisibility=”Auto” 。 问题是,如果我调整窗口大小以便显示垂直滚动条,即使不需要(也有足够的水平空间来查看整个控件),也会始终显示水平滚动条。 看起来似乎垂直滚动条正在弄乱滚动查看器的宽度。 有没有办法纠正这个问题,除非实际需要水平滚动条,否则不会出现? 下面是我的xaml和我在CustomWrapPanel添加的唯一代码: 1 2 3 4 5 6 7 8 9 CustomWrapPanel唯一被覆盖的CustomWrapPanel : protected override Size MeasureOverride(Size availableSize) { double maxChildWidth = 0; if (Children.Count > 0) { foreach (UIElement el in Children) { if (el.DesiredSize.Width […]

WPF WrapPanel – 所有项目应具有相同的宽度

我有一个ListBox,我的ItemsPanel已经替换为WrapPanel。 WrapPanel现在托管数据绑定ListboxItems。 每个项目都有一个可变大小的文本,为每个项目提供不同的宽度。 但是,我希望宽度保持不变,以便所有项目的宽度与文本最长的项目相同。 那可能吗?