0
私はメインウィンドウクラスを持っています。そこに私のタスクバーにオーバーレイアイコンを設定しようとしています。re:コードの背後にあるコードでリソースにアクセスできない
this.TaskbarItemInfo.Overlay =(ImageSource)Resources ["WarningImage"];
xamlに画像オブジェクトを追加したにもかかわらず、私が試してもリソースは空です(カウント0)。オーバーレイアイコンをリソースをバイパスして、ファイルからイメージをロードするという信頼できる方法はありますか?このアプローチを使用してオーバーレイを設定できるように、アプリケーションのResourceDictionaryでリソースを参照する方法はありますか?
//リソースは何のイメージが
var test = (DrawingImage)this.FindResource("WarningImage");
this.TaskbarItemInfo.Overlay = (ImageSource)Resources["WarningImage"];
を発見したNULLである 〜Rあなたはリソースディクショナリを作成しているので、問題が発生している
<Window.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="/Styles/AppStyles.xaml"/>
<ResourceDictionary>
<DrawingImage x:Key="WarningImage">
<DrawingImage.Drawing>
<ImageDrawing Rect="0,0,16,16" ImageSource="/Images/question.png" />
</DrawingImage.Drawing>
</DrawingImage>
</ResourceDictionary>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Window.Resources>
と私はそれを行うことができる唯一の方法は、のResourceDictionaryを経由していました。 DrawingImageをResourceDictionaryと一緒に追加すると、コンパイルされません。リソースにイメージを追加したり、共有リソースに同時にアクセスする方法はありますか?画像を共有リソースに移動しようとしましたが、うまく機能しませんでした。 ResourceDictionaryにアクセスしてイメージを取得する方法はありますか? – Radek
@Radek:はい、リソースディクショナリを別のファイル(おそらく** StyleDictionary.xaml **)に移動でき、そのファイルからリソースにアクセスすることは可能です。単純にイメージをリソースとしてフォルダに追加してプロジェクトで使用するだけですか? – ViVi
リソースの方法は、TaskbarItemInfo.Overlayを設定する必要があるImageSourceオブジェクトのインスタンスを取得するために私が私に見つけた最も簡単な方法でした。 – Radek