我有一個包含一個CanvasScatterViewItem自定義形狀
<Ellipse x:Name="Outer_Ellipse" Fill="White" Width="200" Height="200"></Ellipse>
<Ellipse Fill="Red" Canvas.Top ="15" Canvas.Left="15" Canvas.Right="15" Canvas.Bottom="15" Width="170" Height="170" ></Ellipse>
</Canvas>
</s:ScatterViewItem>
ID的ScatterViewItem想提供一個自定義形狀,以便默認矩形形狀不顯示(這是我當前的圖片實施
我在這裏跟着這個例子link text並且諮詢了SDK附帶的益智遊戲,但是我無法得到它的工作,我的ScatterViewItem是空白的
我在SurfaceWindow.Resources
<Path x:Key="ScatterShape" Fill="Blue">
<Path.Data>
<EllipseGeometry
RadiusX="200"
RadiusY="200">
</EllipseGeometry>
</Path.Data>
</Path>
定義的路徑,並複製從上面的鏈接的樣式屬性。我按照指示創建了我的CustomShape.cs,然後創建了ScatterViewItem。
System.Windows.Shapes.Path path;
path = (System.Windows.Shapes.Path)Resources["ScatterShape"];
CustomShape poly = new CustomShape(path.Data);
ScatterViewItem item = new ScatterViewItem();
item.Content = poly;
item.CanScale = false;
Binding binding = new Binding();
binding.Source = poly;
item.SetBinding(ScatterViewItem.DataContextProperty, binding);
scatter.Items.Add(item)
林,因爲我與線
item.Content = poly
理解與上面的代碼略微混淆將覆蓋ScatterViewItem的含量(即在我的情況下帆布或在另一種情況下說的圖像)。暫時我不需要移動或縮放ScatterView項目,所以不需要陰影我只是想要刪除矩形框。
感謝您的回答,真的很感激。我花了幾個小時試圖跟隨SDK中的拼圖示例,並沒有得到任何地方。我沒有意識到使用ControlTemplate是多麼簡單。 – Bear 2010-12-16 18:16:15