2009-03-09 14 views
3

私のアプリケーションでは、いくつかの場所で使用する必要があるイメージがあります。私は、リソースディクショナリで一度だけイメージを定義し、私の他のxamlファイルをその定義と同じようにしたいと思います。私は理解できない1つのことは、xaml属性の属性付き内部ではなく、xaml要素として定義されたものを参照する方法です。ここでxamlダイナミックリソースを属性ではなく要素として参照する方法

は私のResourceDictionaryは、だから私のXAMLで私は制御対象

<TextBlock Text="Sample Text" Background="{DynamicResource MessageGradient}"/> 

しかし、私は彼のどのように把握したいの属性として勾配を参照する方法を知っている

# resourceDictionary.xaml 

<LinearGradientBrush x:Key="MyGradient" StartPoint="0,0.5" EndPoint="1,0.5"> 
    <GradientStop Color="#A5000000" Offset="0"/> 
    <GradientStop Color="#00000000" Offset="1"/> 
</LinearGradientBrush> 

<Image x:Key="MyImage" Source="MyGlyph.png" Width="20" Height="20" /> 

ですフルブローされたコントロールオブジェクトであるImageを参照してください。この例では、画像の代わりにボタンに「{DynamicResource MyImage}」というテキストを持つボタンを作成します。

<!-- Want MyImage to be content of the button --> 
<Button> 
    {DynamicResource MyImage} 
</Button> 

は、これを実行するための簡単な方法はありますか、私はちょうど私の画像が含まれているコントロールテンプレートを作成する必要があり、その後、私のXAMLでコントロールテンプレートを使用して画像タグを持っているのだろうか?

答えて

5

あなたがイメージボタンの内容になりたいので、あなたがContentプロパティにそれを結合することができるようになります。

<Button Content="{DynamicResource MyImage}" /> 
0

あなたは、任意のコントロールの背景として画像を入れしようとしている場合

<Button Content="My Button"> 
     <Button.Background> 
      <ImageBrush ImageSource="MyGlyph.png"/> 
     </Button.Background> 
    </Button> 
3
<!-- Want MyImage to be content of the button --> 
<Button> 
    <DynamicResource ResourceKey="MyImage"/> 
</Button> 
関連する問題