2009-06-18 12 views
1

コード内に新しい図形を動的に作成するために図形データを再利用しようとしています。基本的に私はこのコードをReuse path object in XAMLにしたいと思っています。コード内の異なるインスタンスに同じスタイルを2回設定する

 Path path = new Path(); 
     path.Style = (System.Windows.Style)this.Resources["PathStyle"]; 
     Path path2 = new Path(); 
     path2.Style = (System.Windows.Style)this.Resources["PathStyle"]; 

しかし、私は、コードがSL 3のMainControlである「値が予想される範囲内に収まっていない」と言っ4行目

ArgumentExceptionがを得る:ここでは状況があります応用。 リソースのXAMLコードは

<UserControl.Resources> 
     <Style x:Key="PathStyle" TargetType="Path"> 
      <Setter Property="Data" Value="M63,171 L138,117 L168,189 L99,219"/> 
      <Setter Property="Fill" Value="#FFF07E7E"/> 
      <Setter Property="Height" Value="103"/> 
      <Setter Property="Width" Value="106"/> 
      <Setter Property="Stroke" Value="#FF000000"/> 
      <Setter Property="Stretch" Value="Fill"/> 
     </Style> 
</UserControl.Resources> 

任意のアイデアはありますか?

+0

内部例外はありますか? – Will

答えて

0

それは奇妙です...私はなぜそれが最初に動作し、2回目に失敗するのか分かりません。二回リソースにアクセスするのではなく、中間変数を使用してみてください:

Style style = (System.Windows.Style)this.Resources["PathStyle"]; 
    Path path = new Path(); 
    path.Style = style; 
    Path path2 = new Path(); 
    path2.Style = style; 
+0

私はまだ同じエラーが発生しています。 –

関連する問題