问题标签 [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 回答
1128 浏览

wpf - WPF创建一个垂直滚动然后水平滚动的项目列表

如何创建一个控件,其中包含垂直列出的项目中的项目,但仅限于控件的高度,然后从第二列的顶部开始?

有点像 Windows 资源管理器的外观和感觉。

我现在正在使用 a WrapPanel,但我不知道如何让它水平滚动......

非常感谢这里的任何帮助

干杯,马克

0 投票
1 回答
10115 浏览

silverlight - Silverlight ItemsControl 垂直滚动条,使用包裹面板作为 ControlTemplate

我有一个元素的集合,每个元素都有一个名称和一个图像 blob 的子集合。我想显示一个 Accordion,每个项目代表每个 MainElement。在每个元素内部,我在所述 MainElement 的子集合中显示图像。手风琴由用户调整大小,因此我使用包装面板来呈现图像。当手风琴足够宽时,图像会重新排序,尽可能多地适合每一行。当包装面板每行只显示一个图像时(因为没有足够的空间容纳更多),问题就出现了,图像列表继续,但我看不到所有图像,因为它们不适合控件的高度。我需要在 AccordionItem 内显示一个垂直滚动条,以便向下滚动图像列表。所以,这是我的代码:

http://www.silverlightshow.net/tips/How-to-add-scrollbars-to-ItemsControl.aspx建议我应该用滚动查看器包围我的包装面板,就像这样

但是后来我的包装面板变得非常小,我只能看到一个小的垂直滚动条有什么想法吗?非常感谢。

编辑:我认为包装面板在控制模板中使用时会失去宽度

应按如下方式使用:

无论如何,我尝试添加 ScrollViewer.VerticalScrollBarVisibility="Visible" 行,但我又被卡住了。

再次编辑:

现在我的包装板看起来像这样:

我使用 wrappanel 作为项目面板,并且使用 ControlTemplate 用滚动查看器围绕演示者。仍然,没有运气:/

0 投票
4 回答
7108 浏览

silverlight - 2009 年 11 月 Silverlight 工具包中的 Microsoft.Windows.Controls.dll 在哪里?

我想在 Silverlight 3中使用WrapPanel 。

它显然在 Silverlight Toolkit中。

我可以在上面找到的所有信息都说下载工具包,解压缩下载,查看文件夹二进制文件,你会找到Microsoft.Windows.Controls.dll

适用于Silverlight 工具包的2008 年 12 月版本,因为它是一个 zip 文件。

但我想要最新的版本。

但是,2009 年 11 月版本的 Silverlight 工具包是一个.msi文件,它可以安装但不告诉我Microsoft.Windows.Controls.dll在哪里。

也不是在添加服务 | .NET 选项卡。

如何从 2009 年 11 月的 Silverlight Toolkit 安装中获取 Microsoft.Windows.Controls.dll,以便在 Silverlight 3 中使用 WrapPanel?

0 投票
1 回答
748 浏览

silverlight - Silverlight 聊天 WrapPanel 崩溃/错误

我的任务是为两个人创建一个简单的 Silverlight 聊天框。我的控制必须遵守以下要求

  1. 可滚动
  2. 如果文本太长,则必须换行
  3. 添加新项目/消息时,必须将该项目滚动到视图中

现在我已经成功地制作了一个用户控件来满足这些要求,但是我遇到了一个可能的错误/崩溃,我一生都无法修复。我正在寻找解决该错误的方法,或者寻找一种不同的方法来创建可滚动的聊天控件。

这是我一直在使用的代码。我们将从聊天窗口的 XAML 开始

这个想法是向列表框添加一个新项目。项目(如 XAML 中所示)是一个简单的 2 列网格。一栏是用户名,一栏是消息。

现在,我添加到 ListBox 的“项目”是一个自定义类。它具有我在 XAML 中使用绑定的三个属性(Player、ForeColor 和 Message)

Player是要显示的当前用户的字符串。

ForeColor只是一种前景色偏好。它有助于区分消息之间的差异。

MessageWrapPanel我以编程方式在每个单词的空白处打断提供的字符串。然后对于每个单词,我将一个新的TextBlock元素添加到WrapPanel

这是自定义类。

最后,我将我的项目添加到 ListBox。这是简单的方法。它将上面的 ChatMessage 类作为参数

现在我已经对此进行了测试,并且一切正常。我遇到的问题是当我使用滚动条时。您可以使用侧滚动条或箭头键向下滚动,但向上滚动时 Silverlight 会崩溃。FireBug 返回带有XamlParseException的ManagedRuntimeError #4004

我非常接近进行这种控制工作,我可以品尝到它!对我应该做什么或改变有什么想法吗?有没有比我采用的方法更好的方法?

提前致谢。

更新

我找到了使用 ScrollViewer 和 ItemsControl 而不是 ListBox 控件的替代解决方案。在大多数情况下,它是稳定的。

0 投票
2 回答
3346 浏览

visual-studio-2010 - 如何让 Silverlight 4 工具在 Web Developer 2010 Express 中工作?

我安装了Windows 7

然后我使用Web Platform Installer从这里安装了Web Developer 2010 Express

然后我从这里安装了4 月 15 日发布的 Silverlight 4 Toolkit

然后我添加了这个参考

替代文字 http://www.deviantsart.com/upload/ijk0lm.png

然后在我的 XAML 中,我像这样引用它,但它没有给我智能,并告诉我我缺少程序集引用

替代文字 http://www.deviantsart.com/upload/cd4vrj.png

更新:

也不起作用,即使在重建之后

在 Web Developer 2010 Express 中使用 Silverlight 4 Toolkit 需要做什么?

附录:

因此,我在另一台计算机上使用 Web Developer Express 2008 中的 Silverlight 3 再次对其进行了测试,它确实以我记忆中的方式工作,那么为什么它在 Silverlight 4 中不能以这种方式工作,我需要进行哪些更改才能获得它去工作?

替代文字 http://www.deviantsart.com/upload/14eo9k7.jpg

0 投票
1 回答
1507 浏览

c# - 动态创建 WrapPanel 按钮

我有一个存储购买项目的表和在 NHibernate 中使用的实体类:

我想通过从PurchasedItems表(IList <PurchasedItem>对象)中获取所有记录来减少代码重复。记录已按SortSale列降序排序。WrapPanel基于IList <PurchasedItem>对象创建按钮的最佳方法是什么?我也想为每个按钮分配事件处理程序。该按钮显示带有产品名称的标题。

0 投票
1 回答
8230 浏览

c# - WPF WrapPanel - 所有项目应具有相同的宽度

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

0 投票
2 回答
1379 浏览

wpf - 如何在 Horizo​​ntal WrapPanel 中排列 WPF 项目,以便它们根据每个项目中的任意垂直点排列?

我正在尝试在 WPF 中创建一个视图,并且很难弄清楚如何设置它。这是我正在尝试构建的内容:

  • 我的 ViewModel 公开了一个名为 Items 的 IEnumerable 属性
  • 每个项目都是时间轴上的一个事件,每个项目都实现了 ITimelineItem
  • 每个项目的 ViewModel 都有自己的 DataTemplate 来显示它
  • 我想显示由一条线连接的时间线上的所有项目。我认为 ListView 内的 WrapPanel 可以很好地解决这个问题。
  • 但是,每个项目的高度将根据其显示的信息而有所不同。有些项目将在行上具有图形对象(如圆形或菱形,或其他),有些项目在行上方或下方有注释。

所以对我来说似乎很复杂。似乎时间线上的每个项目都必须渲染自己的线段。没关系。但是项目顶部到行(以及项目底部到行)之间的距离可能会有所不同。如果一个项目的线从顶部向下 50 px,而下一个项目的线从顶部向下 100 px,则第一个项目需要 50 px 的填充,以便线段相加。

我想我可以解决这个问题,但是,如果这两个项目在 WrapPanel 的同一行上,我们只需要添加填充!假设有 5 个项目,屏幕上只有 3 个空间... WrapPanel 将把另外两个放在下一行。没关系,但这意味着只有前 3 个需要一起填充,最后 2 个需要一起填充。

这就是让我头疼的地方。我可以看看另一种方法吗?

编辑:我倾向于用继承自 Canvas 并覆盖 MeasureOverride 和 ArrangeOverride 方法的自定义面板替换 WrapPanel。

0 投票
1 回答
7343 浏览

wpf - WPF WrapPanel / ItemsControl 不滚动

我有一个显示项目的包装面板,但我无法让滚动条正常工作任何想法有什么问题吗?

0 投票
3 回答
4412 浏览

wpf - 是否有可用的 WPF“WrapGrid”控件或创建一个简单的方法?

本质上我想要一个 wrapPanel,但我希望项目捕捉到网格而不是被压到左边,所以我可以获得一个漂亮的均匀网格,它会自动消耗可用空间。

WrapPanel 处理调整大小部分。WPF.Contrib.AutoGrid 处理一个很好的自动网格。

任何人有一个结合它们的控件?

我的用例是我有一系列形状不规则的控件。我希望它们出现在漂亮的列中,以便在放置控件时自动换行面板应该捕捉到下一个“制表位”