2012-07-31 44 views
0

我在尋找面板,它可以隨機放置隨機地點中的每個項目。 這將是偉大的,如果它將是開源的!在面板中隨機放置的元素

我正在寫WinRT,XAML,但我可以從SL/WPF移植它。

有沒有人知道這樣的事情?

+3

我不知道一個,但隨機化項目的位置畫布聽起來不是一件困難的工作。爲什麼不推出自己的? – 2012-07-31 14:40:03

+0

懶惰:)所以,我會等幾個小時,如果沒有人知道,案例關閉:P – Zozo 2012-07-31 14:48:01

回答

1

我會建議使用普通的ItemsControlCanvasItemsPanelTemplate,並綁定Canvas.LeftCanvas.Top你如何獲得隨機值是由你的地方產生

<ItemsControl ItemsSource="{Binding MyCollection}"> 
    <!-- ItemsPanelTemplate --> 
    <ItemsControl.ItemsPanel> 
     <ItemsPanelTemplate> 
      <Canvas /> 
     </ItemsPanelTemplate> 
    </ItemsControl.ItemsPanel> 

    <!-- ItemContainerStyle --> 
    <ItemsControl.ItemContainerStyle> 
     <Style> 
      <Setter Property="Canvas.Left" 
        Value="{Binding SomeRandomValue}" /> 
      <Setter Property="Canvas.Top" 
        Value="{Binding SomeRandomValue}" /> 
     </Style> 
    </ItemsControl.ItemContainerStyle> 
</ItemsControl> 

一個隨機值。你可以將它設置爲你的數據項目的屬性,從Converter返回一個隨機值,創建一個靜態資源,給你一個隨機值,等等。

+0

我自己做了類似的東西。謝謝! – Zozo 2014-01-29 14:22:14