2010-07-05 64 views
1

我试图创建一个路径(形状)的资源样式,但是,当创建使用样式的几个路径时,只呈现第一个。有没有一种方法可以在Silverlight 4中重用Shapes的样式?

//In resources xaml 
<clr:String x:Key="path">M 50,50 L 35,15 A 8,10 0 0 1 65,15z</clr:String> 
<Style TargetType="Path" x:Key="pathStyle"> 
    <Setter Property="Stroke" Value="Black"> 
</Style> 
//in control xaml 
<Grid> 
    <Path Style="{StaticResource pathStyle}" Fill="Blue" Data="{StaticResource path}" > 
    <Path Style="{StaticResource pathStyle}" Margin="60" Fill="Red" Data="{StaticResource path}"> 
</Grid> 

只会显示上面XAML中的第一个Path。我读过这是目前它应该如何。有没有办法以非程序化的方法解决这个问题?

回答

0

我想你会发现一条路径直接放在另一条路径上。尝试添加一些边距或将它们放置在一个堆叠面板中。

+0

如果是这样的话,最后的路径将是可见的。事实并非如此。 – SirDemon 2010-07-05 15:18:09

+0

@SirDemon:嗯......这很有趣,但我看到的是红色的不是蓝色的,如果我将红色的一个添加到“边缘= 60”,我就会看到两者。也许你应该用你的_exact_ Xaml更新你的问题,目前发布的Xaml需要整理一些实际工作。 – AnthonyWJones 2010-07-05 15:24:20

+0

您是否在Designer视图之外尝试过它?对我来说,它在设计视图中表现得非常好,但是在运行该项目时,只渲染了第一个。 – SirDemon 2010-07-05 15:28:04

相关问题