我有ListBox,WrapPanel作爲它的ItemsPanelTemplate。我修改了ItemTemplate,以便我的項目顯示爲Tiles。Listbox作爲WrapPanel:如何使項目點擊「pop」作爲新窗口?
到目前爲止,這麼好。
我現在的問題是,當我點擊列表框中的一個項目時,需要一個可以使項目長大的動畫,然後轉到屏幕中心,所以它就像一個模式窗口,我可以編輯我點擊的項目的內容。
我該如何做到這一點?
在此先感謝
我有ListBox,WrapPanel作爲它的ItemsPanelTemplate。我修改了ItemTemplate,以便我的項目顯示爲Tiles。Listbox作爲WrapPanel:如何使項目點擊「pop」作爲新窗口?
到目前爲止,這麼好。
我現在的問題是,當我點擊列表框中的一個項目時,需要一個可以使項目長大的動畫,然後轉到屏幕中心,所以它就像一個模式窗口,我可以編輯我點擊的項目的內容。
我該如何做到這一點?
在此先感謝
我通常使用my own custom popup control對於這種事情。它有一個內置的動畫生長時,這將擴大彈出到全尺寸,且彈出式是視覺樹的一部分,所以你可以把它需要在Visual樹
<Grid x:Name="PopupParent">
<ListBox x:Name="TileListBox">
...
</ListBox>
<!-- Popup -->
<local:PopupPanel local:PopupParent="{Binding ElementName=PopupParent}"
local:PopupPanel.IsPopupVisible="{Binding IsPopupVisible}"
Content="{Binding PopupContent}">
<local:PopupPanel.Resources>
<DataTemplate DataType="{x:Type local:MyTileViewModel}">
<local:MyTileView />
</DataTemplate>
</local:PopupPanel.Resources>
</local:PopupPanel>
</Grid>
從[混合SDK FluidMoveBehavior每當](http://www.microsoft.com/download/en/details.aspx?id=10801)可能會有所幫助。 – 2011-12-23 12:41:18
謝謝。確實,它可能有助於將tile的內容移動到位於列表框頂部的網格。但是由於後者的網格是不可見的,除非添加了一些內容,否則有什麼方法可以知道動畫的動畫何時停止,因此我可以使覆蓋網格可見? – Mike 2011-12-23 13:37:30
我不知道... – 2011-12-23 14:43:38