[英]How can I append two properties together in a listbox?
我有兩個屬性,例如日期和數字。 我有一個列表框,當前將它們一個接一個地綁定,所以現在這兩個屬性占用了兩行。 我怎樣才能將它們一個接一個地排列? xaml不允許我將兩個屬性綁定到一個文本塊。
因此,這是我的列表框現在的外觀:
編號日期
我希望它看起來像:
編號日期
我的列表框代碼如下所示:
<ListBox HorizontalAlignment="Left" Margin="78,35,0,-32" Grid.Row="1" Width="300" ItemsSource="{Binding ListOfItems}" Grid.RowSpan="3" >
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel>
<TextBlock Text="{Binding Number}" />
<TextBlock Text="{Binding Date, StringFormat={}{0:MM/dd/yy}}" />
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
您可以使用“運行”將多個屬性綁定到一個文本塊
<TextBlock>
<Run Text="{Binding Number}"></Run>
<Run Text="{Binding Date, StringFormat={}{0:MM/dd/yy}}"></Run>
</TextBlock>
或多重綁定
<TextBlock>
<TextBlock.Text>
<MultiBinding StringFormat="{}{0} + {1}">
<Binding Path="Number" />
<Binding Path="Date" />
</MultiBinding>
</TextBlock.Text>
</TextBlock>
如果我理解正確,那么您需要在StackPanel中使用水平方向。 將您的DataTemplate更改為以下之一:
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding Number}" />
<TextBlock Text="{Binding Date, StringFormat={}{0:MM/dd/yy}}" />
</StackPanel>
可能您希望StackPanel
水平堆疊項目: Orientation="Horizontal"
。
(cfr。http://wpftutorial.net/StackPanel.html,http : //msdn.microsoft.com/zh-CN/library/ms752328 ( v= vs.110 ) .aspx )
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.