【问题标题】:How to show multiple lines of text in Listbox in Winform?如何在Winform的Listbox中显示多行文本?
【发布时间】:2011-12-26 13:27:55
【问题描述】:

我有一个列表框,其项目仅包含文本。列表框有一些固定的宽度。当我添加与 lisbox 宽度相比宽度更大的文本时,我无法看到剩余的文本。

任何解决方案都会有所帮助。

【问题讨论】:

    标签: c# winforms listbox listboxitem


    【解决方案1】:

    您如何删除Width 属性?

    这样控件将自动扩展 - 与最大项目一样宽

    编辑:可能不是一个好主意,但是:

    您可以将 ListBox 嵌套在 Panel 中,并将 Panel 的宽度设置为恒定值,同时启用滚动条。这样 - 即使有一行比其他行更宽 - 用户也可以滚动。

    【讨论】:

      【解决方案2】:

      如果您使用的是 WPF,请添加一个文本块并使用它的文本换行功能。

      ListBox lb = new ListBox();
      ListBoxItem li = new ListBoxItem();
      TextBlock txtBlock = new TextBlock();
      txtBlock.Width = 50;
      txtBlock.TextWrapping = TextWrapping.Wrap;
      ...
      li.Content = txtBlock;
      lb.Items.Add(li);
      

      如果没有,请查看this answer 的问题。

      【讨论】:

      • 如果您使用的是 WPF,您可能应该使用 DataTemplates。
      猜你喜欢
      • 2020-12-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-10-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-12-29
      相关资源
      最近更新 更多