在 ListBox 中添加多行文本

Add multi-line text inside ListBox

我有这个ListBox:

<ListBox Name="lbAFiles" HorizontalAlignment="Left" Height="100" Margin="318,61,0,0" 
         VerticalAlignment="Top" Width="481">
    <ListBoxItem>
        <TextBlock>Line1<LineBreak/>Line2</TextBlock>
    </ListBoxItem>
</ListBox>

我有自己的 object,其中有几个属性我想填入我的 ListBox 而不是行:

<TextBlock>Line1<LineBreak/>Line2</TextBlock>

我如何使用隐藏代码做到这一点?

        lbAFiles.Items.Add("Line 1");
        lbAFiles.Items.Add("Line 2");

也就是说,使用 MVVM 和 ViewModel 会更好,但您问的是如何在代码隐藏中执行此操作。

无论您想在其中添加什么对象,都可以将属性拉入要添加的字符串中。

另一个(更好的)选项是将此对象直接添加到 ListBox,并使用 DataTemplate 为其提供 "look"(否则您将只获得该对象的 ToString 值)。

更好的选择是使用数据绑定。