如果我使用以下代碼來顯示ListBox
中的對象,如何在TextBlock
中顯示它?TextBlock顯示對象列表
listStudents.Items.Clear();
foreach (Student sRef in StudentList)
{
listStudents.Items.Add(sRef);
}
如果我使用以下代碼來顯示ListBox
中的對象,如何在TextBlock
中顯示它?TextBlock顯示對象列表
listStudents.Items.Clear();
foreach (Student sRef in StudentList)
{
listStudents.Items.Add(sRef);
}
,你可以追加到TextBlock
的Text
屬性:
foreach (Student sRef in StudentList)
{
textBlock1.Text += sRef.Firstname + " " sRef.Lastname + Environment.NewLine;
}
但是您可能想定義一個定義每個對象在視圖中的外觀的ItemTemplate
:
<ListBox x:Name="listStudents">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding Firstname}" />
<TextBlock Text="{Binding Lastname}" Margin="2 0 0 0" />
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
listStudent.Items.Clear();
foreach (Student sRef in StudentList)
{
listSubjects.Items.Add(sRef.firstname + " " + sRef.lastname);
}
如果你只想顯示沒有選擇和其他ListBox
功能對象的列表,這是方便使用ItemsControl
- 它有ItemTemplate
屬性來控制每個項目和其他有用的東西的外觀(實際上,ListBox
繼承ItemsControl
)。只需使用ItemsControl
型itemsStudent
變量,並使用相同的代碼:如果你想在一個TextBlock
顯示學生的幾行
itemsStudent.Items.Clear();
foreach (Student sRef in StudentList)
{
itemsStudent.Items.Add(sRef);
}
更改ListBox上的數據模板 – kurakura88