[解決済み] WPFのStaticResourceとDynamicResourceの違いは何ですか?
2022-03-20 08:23:48
質問
WPFでブラシ、テンプレート、スタイルなどのリソースを使用する場合、StaticResourcesとして指定することもできます。
<Rectangle Fill="{StaticResource MyBrush}" />
またはDynamicResourceとして
<ItemsControl ItemTemplate="{DynamicResource MyItemTemplate}" />
ほとんどの場合(常に?)、一方だけが動作し、もう一方は実行中に例外をスローします。しかし、私はその理由を知りたいのです。
- 主な違いは何ですか。メモリやパフォーマンスへの影響など
- WPFでは、ブラシは常に静的で、テンプレートは常に動的である、といったルールがあるのでしょうか?
I とする StaticとDynamicの間の選択は、見かけほど恣意的ではありません...しかし、私はそのパターンを見ることができません。
どのように解決するのか?
A StaticResource(スタティックリソース は、アプリケーションが実際に実行される前に発生する XAML のロード中に解決され、プロパティに割り当てられます。これは一度だけ割り当てられ、リソース辞書へのいかなる変更も無視されます。
A DynamicResource は、ロード中にプロパティに Expression オブジェクトを割り当てますが、実行時に Expression オブジェクトに値が要求されるまで、リソースを実際に検索しません。これは、実行時に必要になるまでリソースの検索を延期します。良い例は、XAML で後に定義されるリソースへの前方参照です。他の例としては、実行時まで存在しないリソースがある。これは、ソースリソース辞書が変更された場合、ターゲットを更新する。
関連
-
[解決済み] データテーブルの並べ替え
-
[解決済み] C#のStringとstringの違いは何ですか?
-
[解決済み] .NETでのdecimal, float, doubleの違い?
-
[解決済み] C#のconstとreadonlyの違いは何ですか?
-
[解決済み] .NET Coreと.NET Standard Class Libraryのプロジェクトタイプの違いは何ですか?
-
[解決済み] .NETにおけるstructとclassの違いは何ですか?
-
[解決済み] C#の==とEquals()の違いについて
-
[解決済み] WPFの場合、x:Name属性とName属性の違いは何ですか?
-
[解決済み] LINQクエリでToList()とToArray()のどちらを呼び出すのが良いですか?
-
[解決済み】Invoke()とBeginInvoke()の違いは何ですか?)
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] スマートクライアント・ソフトウェアファクトリーの体験談
-
[解決済み] フレームワークとアーキテクチャの違いは何ですか?[クローズド]
-
[解決済み] asp.netでWebサービスのタイムアウト時間を長くする方法は?
-
[解決済み] データテーブルがすでに別のデータセットに属している
-
[解決済み] ASP.NET control to render a <div>
-
[解決済み] gacutil.exeはどこですか?
-
[解決済み] .NET Framework 4 マルチターゲティングパックがアンインストールできない
-
[解決済み] AssemblyVersion、AssemblyFileVersion、AssemblyInformationalVersionの違いは何ですか?
-
[解決済み] HashSetとListの性能比較
-
[解決済み] Math.Round(2.5)はなぜ3でなく2を返すのですか?