というわけで、C# で WPF を使って GUI を作っています。次のようになります。
それは現在行われていません。これらの 2 行は、一種のデータ テーブルを作成しようとした私の試みであり、XAML でハードコードされています。
現在、C# で新しいフルーツ ボタンの追加機能を実装しています。行の背景画像がどのように見えるかを管理する XAML に次のスタイルがあります。
<Style x:Key="stretchImage" TargetType="{x:Type Image}">
<Setter Property="VerticalAlignment" Value="Stretch"/>
<Setter Property="HorizontalAlignment" Value="Stretch"/>
<Setter Property="Stretch" Value="Fill"/>
</Style>
col0
そのため、コードでは、 、col1
、およびの各列の画像を作成しますcol2
。次のコードを使用すると、
col0.Style = (Style)Application.Current.Resources["stretchImage"];
col1.Style = (Style)Application.Current.Resources["stretchImage"];
col2.Style = (Style)Application.Current.Resources["stretchImage"];
次のような新しい行が追加されます。
ご覧のとおり、これは正しくありません...そして、ウィンドウを引き伸ばすと、問題が悪化します。
スタイルの「ストレッチ」プロパティを尊重していないようです。
しかし、代わりにスタイルの読み込みコードを
col0.Style = (Style)FindResource("stretchImage");
col1.Style = (Style)FindResource("stretchImage");
col2.Style = (Style)FindResource("stretchImage");
それは美しく動作します:
(繰り返しますが、アプリは完成していませんので、心配しないでください)、私の主な質問は次のとおりです: と の違いは何Application.Current.Resources[]
ですかFindResource()
? 一部のプロパティを無視しているように見えるのに、他のプロパティは無視していないのはなぜですか? また、可能であれば、どうすればApplication.Current.Resources[]
適切に仕事をすることができるでしょうか?