【问题标题】:Making columns in a WPF ListBox在 WPF 列表框中创建列
【发布时间】:2023-04-08 21:05:01
【问题描述】:

问题:
我有一组包含 3 个元素的项目:

  1. 图片
  2. 说明
  3. 数值

我想在 ListBox 中显示这些(类似于 Excel 在摘要视图中显示电子邮件的方式)但是,我不知道描述字段的宽度。如果我没有为 ListBoxItem 使用的 ItemTemplate 中的宽度设置硬编码值,那么这些值不会对齐。我们的想法是让它们像这样显示在列表框中:

图像....文本1.......100
图像..Text2 更长..101
图像....短文本............102

任何帮助将不胜感激:)

【问题讨论】:

    标签: wpf xaml listbox controltemplate


    【解决方案1】:

    您希望在模板中为列表项使用 Grid,并确保 ItemsControl(或 ListBox)具有 Grid.IsSharedSizeScope="true" 附加属性,并且列定义具有不同的 SharedSizeGroup 值。这将允许所有列表框项参与确定列的宽度,即使从技术上讲它们都有自己的网格。查看更多详细信息here。另请参阅之前的问题:WPF grid across user controls?

    【讨论】:

    • 谢谢 :) 我使用的是 Grid.IsSharedSizeScope,但我在 itemtemplate 上使用它而不是整个网格 :) 谢谢!
    猜你喜欢
    • 1970-01-01
    • 2012-12-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-09
    相关资源
    最近更新 更多