在 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 值)。
更好的选择是使用数据绑定。
我有这个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 值)。
更好的选择是使用数据绑定。