我有一个包含一个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