概要
これまでXamarin.Formsで作っていたアプリを、一念発起して.NET MAUIで作り直す中で
調べたことの備忘録。
環境
Visual Studio for MAC
.NET MAUI
.NET 7
問題となった現象
Microsoft Learnの.NET MAUI アプリ プロジェクトにイメージを追加するを参考に、
イメージファイル(SVGファイル)を追加して見たんですが、
BaseSize指定してもイメージのサイズが変わらない・・・。
csprojファイルでの指定はこんな感じ
<ItemGroup>
・・・
<!-- Images -->
<MauiImage Include="Resources\Images\*" />
<MauiImage Update="Resources\Images\dotnet_bot.svg" BaseSize="168,208" />
<!-- これが追加したコード -->
<MauiImage Include="Resources\Images\icon_settings.svg" BaseSize="24,24" />
・・・
</ItemGroup>
検証したこと
動作原理の詳細は把握できていないのですが、
上記のコードの
<MauiImage Include="Resources\Images\*" />
で、Imagesフォルダ配下のファイルがプロジェクトに取り込まれているので、
その後に同じフォルダ内のファイルを「 Include 」しても、そこでの設定は反映されない模様。
<MauiImage Include="Resources\Images\icon_settings.svg" BaseSize="24,24" />
・・・そもそも再度「Include」って必要がないですよね・・・。
取り込み済みのファイルの設定は「 Update 」を指定するようです。
<MauiImage Update="Resources\Images\icon_settings.svg" BaseSize="24,24" />
気になったこと
プロジェクトを新規作成すると、プロジェクトファイルに以下の設定がデフォルトで行われてるんですよね。
<MauiImage Include="Resources\Images\*" />
これはこれで親切な設定といえば親切なんですけど、
Microsoft Learnのページにも注記しておいて欲しいですよね。
テンプレートで新規作成した場合は、上記の設定が入ってるから、
サイズ変更指定したかったらUpdate使ってね・・・とか(汗)。