我創建了一個帶有平鋪數據模板的列表框。我現在想弄清楚的是,當鼠標懸停或選定的事件發生時,如何正確地將縮放效果應用於每個列表框項目,並使其在包裝面板中正確呈現。我目前已將動畫添加到ListBoxItemTemplate的視覺狀態。在一個wrappanel中Silverlight縮放列表框項目
幾個想法: 當動畫被稱爲包裝面板內的瓷磚不重新定位,以允許正確查看縮放項目。我想讓包裝面板中的項目重新定位以允許縮放的項目可見。
另外我注意到,當縮放的項目超出了包裝面板的邊界時,是否還有一種方法可以在縮放約束到包裝面板的可視區域時保留項目?
代碼使用在搜索視圖
<Grid x:Name="LayoutRoot">
<ListBox x:Name="ResultListBox"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
Background="{x:Null}"
BorderThickness="0"
HorizontalContentAlignment="Stretch"
ItemContainerStyle="{StaticResource TileListBoxItemStyle}"
ItemsPanel="{StaticResource ResultsItemsControlPanelTemplate}"
ItemsSource="{Binding SearchResults[0].Results}"
ScrollViewer.HorizontalScrollBarVisibility="Disabled">
<ListBox.ItemTemplate>
<DataTemplate>
<formatter:TypeTemplateSelector Content="{Binding}" HorizontalContentAlignment="Stretch" Margin="2.5">
<!-- Person Template -->
<formatter:TypeTemplateSelector.PersonTemplate>
<DataTemplate>
<qr:ucTilePerson />
</DataTemplate>
</formatter:TypeTemplateSelector.PersonTemplate>
<!-- Incident Template -->
<formatter:TypeTemplateSelector.IncidentTemplate>
<DataTemplate>
<qr:ucTileIncident />
</DataTemplate>
</formatter:TypeTemplateSelector.IncidentTemplate>
</formatter:TypeTemplateSelector>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</Grid>
ResultsItemsControlPanelTemplate在App.xaml中定義爲
<ItemsPanelTemplate x:Key="ResultsItemsControlPanelTemplate">
<toolkit:WrapPanel x:Name="wrapTile"/>
</ItemsPanelTemplate>
我將不勝感激上哪裏找提前 感謝任何建議
當前結果圖片
謝謝安東尼這正是我正在尋找。問題:由於我正在使用列表框中的數據模板進行加載,因此我在哪裏添加LayoutTransformer?我試圖圍繞每個用戶控件包裝,但沒有看到任何更改?數據模板會影響到這一點嗎? – rlcrews
@Randyc:你的故事板在哪裏? – AnthonyWJones
感謝您指點我正確的方向。我發佈了一個後續更深入地瞭解佈局基本上我有視圖持有一個用戶控件(searchresultcollection.xaml)Searchresultcollection包含數據模板,它根據我的集合中返回的類型在列表視圖中加載適當的usercontrol (21個可能的回報)如果這不是正確的方法,我會很感激任何見解。 – rlcrews