问题标签 [wrappanel]

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

wpf - WPF:如何重新布局包装面板?

我有一个WrapPanel放置在网格中并用ToggleButtons.
所在行的高度是根据组件中wrappanel的个数来计算的。ToggleButtonsWrapPanel

当我加载屏幕时,其中的项目wrappanel布局不正确。但是,当我调整表单大小时,项目会正确显示。

有没有一种方法可以像调整表单大小时那样强制重新布局项目?

下面你可以看到我的 WPF 代码:

0 投票
1 回答
4725 浏览

c# - WPF:如何将大量大图像快速加载到包装面板中?

我有大约 45 个相当大的图像(大约 680x1000)需要加载到一个简单的用户控件(带有填充、图像、文本块和 2 个侧矩形的圆形后边框)中,然后显示在一个包装面板中。虚拟化在这里并没有真正的帮助,因为图像在程序加载时都是可见的。

我知道在 BitmapImage init 内部我可以设置 decodepixel 宽度,这确实有一点帮助,但是我喜欢将它们全部加载为全尺寸,因为我希望能够使用滑块调整图像大小而不损失质量(这部分工作得很快大多数情况下)。我知道一种可能性是将 decodewidth 设置为我设置为最大可视大小的某个数字可能会有所帮助。

我尝试了如何在后台加载图像?(第一个答案),但是它导致程序加载时间更长!

有任何想法吗?

当前加载代码:

示例 XAML 代码:

.

更新:

好吧,我最终通过在单个后台工作程序中运行加载图像循环来使其更具响应性。加载每个图像后,调用 Dispacher.Invoke 以创建包装项目。在玩了一段时间后,我让它显示每个项目,因为它是在以前的同一时间创建的。

0 投票
4 回答
7592 浏览

wpf - WPF:ItemsPanelTemplate 中的 WrapPanel 扩展列表宽度

我有一个这样定义的列表框:

我的问题是:这个列表包含在一个网格控件中,应该使用它包含的那个单元格的所有可用空间,但它不应该强制父级分配更多空间。但是发生的情况是,一旦包装面板填满,而不是实际将项目包装到下一行(应该如此),它只是扩展了列表框的宽度,并且在此过程中强制父网格也调整大小。

如何让包装面板尊重其父级的大小,而不是强制它扩大其大小?

提前致谢!

编辑:还有一件事。我可以明确设置包裹面板的宽度以使其包裹,但我希望包裹面板与列表框具有相同的大小。

0 投票
1 回答
7158 浏览

c# - Wrappanel 和滚动查看器问题

我需要显示Buttons,用户可以使用它来添加控件。Buttons被分类成组。这是我拥有的 XAML -

我想要一个垂直ScrollBar公共的WrapPanel's 和单独的水平ScrollBar's。有了这个 XAML 滚动条不能正确出现,ScrollViewer导致包装被“禁用”,它只是将我的控件留在单个row(或column)中,并ScrollBar立即使用。

我不能给 's 一个固定widht的值,WrapPanel因为这个控件将显示在一个DockPanel(类似于 VS 工具箱)中,并且用户可以 cnage 它。

有任何想法吗?

0 投票
2 回答
5800 浏览

wpf - 使用 WPF WrapPanel 换行和右对齐文本 - WPF 错误?

我正在尝试使用 WrapPanel 和两个 TextBlocks 将星号 (*) 附加到某些文本的左侧,允许文本换行,并强制文本右对齐。通过创建一个将 FlowDirection 设置为 RightToLeft 的 WrapPanel 并添加我的文本,然后是星号,我已经成功地做到了这一点。但是,如果我使用的文本恰好在行尾有任何非字母数字字符,它就会莫名其妙地被强制排在行首。我觉得这种行为很奇怪。我认为这一定是 WPF 中的错误,而不是预期的行为。

文本示例 = 普通文本(其他文本):

随意使用以下示例代码为自己重新创建问题。只需将它放在一个高度和宽度 = 100 的窗口中,然后在文本框中键入“普通文本(其他文本)”。或者,将高度和宽度设置为您喜欢的任何内容并编写足够的文本以强制换行,然后在末尾添加标点符号。

示例代码:

所以,我的问题。

  • 这是一个错误,还是有意为之?
  • 如果这是一个错误,我应该以某种方式将其提交给 Microsoft 吗?如何?

自从开始这篇文章以来,我决定将两个 TextBlocks 放在一个两列网格中。使用包含 TextBlock 的非星号配置为使用 Right TextAlignment 无论如何我都满足了我的所有要求。不过,我发现这是一个有趣的问题。

0 投票
1 回答
273 浏览

c# - 带有制表位的WPF WrapPanel?

我有兴趣制作一个换行面板(大量其他用户控件)作为制表位。该面板位于滚动查看器中,滚动查看器确实具有 IsTabStop 属性,但滚动查看器没有。我希望用户能够使用 tab 键通过位于包装纸内的用户控件之一来导航每个。

0 投票
1 回答
728 浏览

wpf - 防止在 WPF 换行面板中跳转动态大小的项目

我有一个充满矩形的环绕面板,当您将鼠标悬停在一个矩形上时,它会变大(使用情节提要动画)以模拟被放大。

这一切都很好,问题是如果您将鼠标悬停在一行中的最后一个矩形上,放大会导致它跳到下一行(因为它变得太大而无法适应当前行)。我确信有一个优雅的解决方案可以防止这种情况,但我就是想不通。任何帮助将不胜感激。

这是运行它的 XAML:

0 投票
2 回答
8050 浏览

.net - 是否有(好的/免费的)可用于 WPF 的 VirtualizingWrapPanel?

我找到了几个替代方案,这个 CodePlex 项目这个商业项目,但是前者在我的测试中效率极低,而后者,嗯,成本 $$。我也找到了这个实现,但它与其说是 WrapPanel 不如说是“TilePanel”,并且不支持自动调整大小的项目(尽管它看起来确实很快)。

我还找到了一些关于如何在这里编写自己的“提示” ,但是由于开发人员在公司时间开发它,他无法发布他的完整源代码。

有没有人花时间实现一个像样的 VirtualizingWrapPanel 并公开发布,还是我必须花一天时间自己写?

0 投票
2 回答
18415 浏览

wpf - 将换行符/新行添加到 WPF 换行面板

有谁知道是否可以在 WPF Wrap 面板中输入换行符?它违背了包装面板的用途,所以我不确定它是否可能。

如果不是,是否有任何其他 WPF 控件实际上允许我在其中输入换行符并支持添加子项(我自己的自定义控件?)

0 投票
2 回答
3993 浏览

wpf - WPF - 虚拟化 WrapPanel

有没有人可以在 WPF 应用程序中使用功能正常的虚拟化 WrapPanel?

我已经在http://virtualwrappanel.codeplex.com/下载并尝试了实现。但是,我得到以下异常:

“元素 'MyNamespace.VirtualizingWrapPanel' 的布局测量覆盖不应返回 PositiveInfinity 作为其 DesiredSize,即使 Infinity 作为可用大小传入也是如此。”

这是在尝试将包装面板应用于 ListBox 时