2
我試圖在wpf/xaml中創建一個控件,它將顯示圖像的水平列表。要修復的列表框的寬度(無滾動條)。添加新項目時,現有項目會減少用於容納它的圖像數量(實際圖像不會僅減少顯示的圖像量)。該功能類似於將新列添加到具有相對寬度屬性(「*」)的網格,並且該列包含具有固定寬度的圖像。這是我的代碼到目前爲止:ListBox顯示水平圖像WPF
<Window.Resources>
<ItemsPanelTemplate x:Key="ListBox_HorizontalItems">
<StackPanel Orientation="Horizontal" />
</ItemsPanelTemplate>
<DataTemplate x:Key="ListBox_DataTemplate">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="50" />
</Grid.ColumnDefinitions>
<Image Width="150" Source="{Binding ImageSource}" />
</Grid>
</DataTemplate>
<Style x:Key="ListBox_Style_Horizontal" TargetType="ListBox">
<Setter Property="Width" Value="150" />-->
<Setter Property="ItemTemplate" Value="{StaticResource ListBox_DataTemplate}" />
<Setter Property="ItemsPanel" Value="{StaticResource ListBox_HorizontalItems}" />
</Style>
</Window.Resources>
<Grid>
<ListBox Name="lbxImages" Style="{StaticResource ListBox_Style_Horizontal}" Width="250" Height="100" />
</Grid>
這是非常接近我的需要!然而,我不能解決如何減少新的項目添加到列表中時顯示的圖像數量。當前添加新項目時會出現一個滾動條。櫃面我不解釋自己很好這裏有一些截圖顯示我需要的功能:
可有人告訴我如何實現這一目標?謝謝你的幫助!
感謝這個,它的偉大工程!我從來沒有使用「UniformGrid」,看起來很有用... – qu1ckdry 2012-04-16 11:30:19