ホームページ > バックエンド開発 > C++ > コードでパック URI を使用して WPF イメージ ソースを適切に設定する方法

コードでパック URI を使用して WPF イメージ ソースを適切に設定する方法

DDD
リリース: 2025-01-17 06:27:08
オリジナル
686 人が閲覧しました

How to Properly Set WPF Image Sources Using Pack URIs in Code?

コード内のパッケージ URI を使用して WPF イメージ ソースを設定します

WPF では、画像がリソースとしてプロジェクトに埋め込まれる場合、通常、画像のソースはコードで設定されます。ただし、提供されたコード スニペットのようにストリームを使用してソースを設定すると、画像が表示されない場合があります。

解決策は、アセンブリ内の埋め込みリソースにアクセスする特別な URI タイプであるパッケージ URI を使用することにあります。

パッケージ URI の作成

パッケージ URI は特定の形式に従います:

<code>pack://application:,,,/**程序集简称**;component/**路径**</code>
ログイン後にコピー
  • 権限: application:///
  • パス: 参照アセンブリ内のリソースのパス (プロジェクト フォルダー内の相対パスを含む)。 「application:」の後の 3 つのスラッシュはカンマに置き換える必要があります。

あなたの場合、画像「SomeImage.png」のパッケージ URI は次のようになります:

<code>pack://application:,,,/YourAssemblyName;component/SomeImage.png</code>
ログイン後にコピー

コードでパッケージ URI を使用する

パッケージ URI を使用して画像ソースを設定するには、次のコードを使用できます:

<code class="language-c#">Image finalImage = new Image();
...
BitmapImage logo = new BitmapImage();
logo.BeginInit();
logo.UriSource = new Uri("pack://application:,,,/YourAssemblyName;component/SomeImage.png");
logo.EndInit();
...
finalImage.Source = logo;</code>
ログイン後にコピー

あるいは、より短いコンストラクターを使用することもできます:

<code class="language-c#">finalImage.Source = new BitmapImage(new Uri("pack://application:,,,/YourAssemblyName;component/SomeImage.png"));</code>
ログイン後にコピー

重要なメモ

  • プロジェクトのプロパティで、画像リソースのビルド アクションが「リソース」であることを確認してください。
  • 「application:」の後の 3 つのスラッシュをカンマに忘れずに置き換えてください。
  • 「%」や「?」などの予約文字は、適切なエンコーディングを使用してエスケープします。

以上がコードでパック URI を使用して WPF イメージ ソースを適切に設定する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート