WinUI3

WinUI3プロジェクトに持っている言語リソースと、appmanifestの中の言語リソース設定、OSの表示言語設定の関係の実験

もくじ https://tera1707.com/entry/2022/02/06/144447 下のような問題に当たったので、いろいろ試したときのメモ。 ローカライズのやり方で、OSで同じ言語設定をしてても動きが違うことがある WPFとWinUI3で、ローカライズを以前やった。 ①WinUI3で、文字列…

WinUI3で、OSの言語設定を変更せずに、コードから使う言語を変更する

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと 以前の記事で、.reswファイルを作成して、WinUI3をローカライズする方法を調べた。 そこでローカライズした後、画面上の文言が翻訳できているか、OSの言語設定を変えて動作確認していたの…

タイトルバーで右クリックして出てくるコンテキストメニューから一部項目を消す(Winui3のタイトルバーを右クリックしたときのコンテキストメニューのバグ対応)

もくじ https://tera1707.com/entry/2022/02/06/144447#WinUI3 やりたいこと 以前、WinUI3のウインドウを最大化できないようにしたくて、下記ページでOverlappedPresenterを使って実現した。 そこでは、最大化ボタンを無効表示にできていた。 https://tera17…

[WinUI3] WinUI3で表を使うために、CommunityToolkit.WinUI.UI.Controls の DataGridを試す

WinUI3のDataGridで表を作りたい。 DataGridはWindows Community Toolkitに含まれている。(WinAppSDKの元にはない) https://github.com/CommunityToolkit/WindowsCommunityToolkit Windows Community Toolkitの7.1.2が、WinAppSDKの1.0をサポートしているら…

WinUI3アプリをローカライズする(ResourceDictionary使用)

WInUI3関連記事 https://tera1707.com/entry/2022/02/06/144447#WinUI3 やりたいこと WinUI3アプリをローカライズしたい。 以前の記事で、MSのドキュメントをもとに、.reswを使ってローカライズをした。 WinUI3を手探りで使う中でローカライズをしたいときに…

現在の言語の設定にかかわらず、指定した言語のリソースを取ってくる

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと 以前の記事で、Windowsの言語設定に合わせてリソースを取得する方法を調べたが、今度は逆に、今現在のWindowsの言語設定によらず、固定である言語の(例えばなんの言語設定にしていても英…

WinUI3のコントロールのnupkgを作って使ったときに出てくる「.xbfがない」エラーの対応

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと WinUI3のUserControlを作って、それを複数のWinUI3アプリで共用したいなと思い、UserControlをdllにして、それをnupkgにして他アプリでも使えるようにしようとした。 いざ、UserControlを…

WinUI3のコントロールの標準style(generic.xaml)のありか

もくじ https://tera1707.com/entry/2022/02/06/144447/WinUI3 やりたいこと WinUI3で「標準のコントロールのstyleやテンプレート」を取ってくるために、以前、下記の記事で、generic.xamlを取ってくればいいということを調べた。 コントロールのマウスオー…

WinUI3で最小ウインドウサイズを指定する

もくじ https://tera1707.com/entry/2022/02/06/144447#WinUI3 やりたいこと WPFとかでよくやっていた、ウインドウサイズをこれ以上小さくできないようにしたい、ということをWinUI3でもやりたい。 が、ぱっと調べただけでは、WinUI3の標準のやり方でそうい…

WinUI3アプリのウインドウの大きさや位置が変化したイベントと、変化したときの大きさや位置の値を取りたい

もくじ https://tera1707.com/entry/2022/02/06/144447#WinUI3 やりたいこと WInUI3アプリのウインドウの、大きさや位置が変化したイベントと、変化したときの大きさや位置の値を取りたい。 前提 VisualStudio2022 Community 17.3.0 WinUI3 と パッケージプ…

WinUI3アプリのウインドウのタイトルバーを消す

もくじ https://tera1707.com/entry/2022/02/06/144447#WinUI3 やりたいこと WInUI3アプリのウインドウの、タイトルバーをなくしたい。 前提 VisualStudio2022 Community 17.3.0 WinUI3 と パッケージプロジェクト Windows App SDK 1.1.3 やりかた Overlappe…

[WinUI3] テキスト中に出てくるリンクをつくりたい1(没)

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと 下の図のような感じで、文章中のリンク表示をつくりたい。 そこだけリンクだと分かるように色を変えて、かつ下線も引いた見た目にしたい。 ※後日追記 もっと簡単で良いやり方があった。下…

いったんWindows App SDKをアンインストールしたい

もくじ https://tera1707.com/entry/2022/02/06/144447#WinUI3 やりたいこと Windows App SDK をいっぺんアンインストールしたい。 やりかた 下記のようにすれば、アンインストールできた。 PowerShellを開いて、 get-appxpackage *appruntime* | Select Pac…

非パッケージのWinUI3アプリを、WindowsAppSDKが入っていないPCでも動くようにする

もくじ https://tera1707.com/entry/2022/02/06/144447#WinUI3 やりたいこと 先日、WinUI3製のアクリル見た目を調整するアプリを作った。 tera1707.com これを、まっさらインストールしたてのWindows11で動かすと、下記のような、WindowsAppRuntimeが足りな…

WinUI3の背景アクリルの色調整をする

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと WinUI3のアクリルを使って、半透明のぼかしの入ったウインドウを作りたいのだが、半透明に少し色を入れた、例えば黄色がかったアクリル板のような色にしたいときに、どこの値をどうしたら…

WinUI3アプリを高DPI(>100%)でappWindow.MoveAndResize()する

もくじ https://tera1707.com/entry/2022/02/06/144447#WinUI3 やりたいこと WinUI3アプリのウインドウサイズを変更するには、AppWindowクラスを使えばよいことが分かった。 ⇒こちら また、WinUI3アプリで、ディスプレイの倍率(DPI)が100%でないときに、とり…

ライト/ダーク/ハイコントラストの変化時イベントはWinUI3で取れるか?

もくじ https://tera1707.com/entry/2022/02/06/144447#WinUI3 やりたいこと Windowsの設定上で、ライト/ダークモードとハイコントラストのONOFFが変化したときに、なにか処理をしたい。 前提 Windows10 Home 21H1 19043.1706 VisualStudio2022 Community 17…

同じスレッドの別ウインドウを開く

もくじ https://tera1707.com/entry/2022/02/06/144447#WinUI3 やりたいこと WinUI3は、別ウインドウを開けない?みたいな話を聞いていたが、最近のWinUI3では開けるらしい。 WinUI3 Galleryのサンプルを見て、試してみる。 やりかた WinUI3 Galleryのサンプ…

コードからバインディングを設定する

もくじ https://tera1707.com/entry/2022/02/06/144447#WinUI3 やりたいこと 普段はxamlに書いたコントロールのプロパティに、<TextBlock Text="{x:Bind ViewModel.MyString, Mode=OneWay}"/>のような感じでバインディングを記述するが、コードの中からバインディングがしたくなった。 どうやればいいか?調べたい。 前提 </textblock>…

generic.xamlにないデフォルトテンプレートのありか(RadioMenuFlyoutItemの場合)

もくじ https://tera1707.com/entry/2022/02/06/144447#WinUI3 やりたいこと あるとき、フライアウトの中にあるラジオボタンの、このマルの部分の形を変えたいなと思った。 ※フライアウトの中身をラジオボタンにしたかったので、<RadioMenuFlyoutItem>を使っている。 で、こちらの</radiomenuflyoutitem>…

ResourceDictionaryから他のResourceDictionaryのリソースを使うとき

もくじ https://tera1707.com/entry/2022/02/06/144447#WinUI3 やりたいこと 知ってる人ならあたりまえやんといわれそうだが、 あるリソースディクショナリから、別のリソースディクショナリにあるブラシを使おうとしたときに、 リソースが見つかりませんと…

ワーカースレッドのコードに、UI部品を更新するコードを書く

もくじ https://tera1707.com/entry/2022/02/06/144447#WinUI3 やりたいこと 画面のスレッドでない処理に、画面の表示更新を行うようなコードを書くと、下記のようなエラーが起きてしまう。 エラーが起きないようにしたい。 やったこと Microsoft.UI.Dispatc…

よく知られたフォルダパスの取り方

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと 今ログインしているユーザーのデスクトップとか、ユーザー共通のドキュメントフォルダとかを、パス文字列直打ちではない方法で取得したい。 やったこと WinUI3アプリでは、下記のようにす…

左クリックでFlyoutを表示できるToggleボタンを作る その2

もくじ https://tera1707.com/entry/2022/02/06/144447#WinUI3 やりたいこと 以前の記事で、ToggleButtonでフライアウトが表示できるようにした。 (ToggleButtonでは、左クリックでフライアウトが表示できなかったので、表示できるようにした) が、その時の…

WinUI3アプリから、別のDLLに置いてあるResourceDictionaryを使う

もくじ https://tera1707.com/entry/2022/02/06/144447#WinUI3 やりたいこと WinUI3アプリから、同じくWinUI3のライブラリのプロジェクトにおいてあるリソースディクショナリの中のリソースを参照できるようにして、リソースを複数プロジェクトで共用したい…

UnitTestでDependencyInjectionを利用する

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと 昔から、UnitTestせねば、自動テストせねば、そのためにDI(DependencyInjection)せねば、、、と思い続けてたのに、どんどん後回しになって全然やってなかったので、まずは簡単にDIの練習…

アプリ自身で自分のテーマ(ダーク/ライト)を変更する

WinUI3関連記事 https://tera1707.com/entry/2022/02/06/144447#WinUI3 やりたいこと 以前、アプリ画面上にあるコントロール類を、テーマ(ダーク/ライト/ハイコントラスト)に沿った色でにするということをした。 tera1707.com 今回は、アプリ自身で、自分の…

WinUI3ではStyle.Triggersがないので代替手段でマウスオーバー時の背景色変更する

もくじ https://tera1707.com/entry/2022/02/06/144447#WinUI3 やりたいこと 以前調べた、WPFでStyle.Triggerを使ってマウスオーバー時に背景色を変える方法をWinUI3でもやろうとすると、Style.Triggerがなくなって使えなくなっていた。 WinUI3っで、お手軽…

WinUI3アプリのウインドウを、dpiの大きなモニタに移動すると、中のUI部品は大きくなるのに、ウインドウの大きさはそのままになる

もくじ https://tera1707.com/entry/2022/02/06/144447#WinUI3 やりたいこと UWPやWPFのウインドウをdpi=100%のモニターから125%のモニターに移動すると、ウインドウが25%分大きくなり、中の部品も25%分大きくなって、結果いい感じに見えるのだが、WinUI3で…

WinUI3のウインドウのタイトルバーを自由にカスタムしたい

もくじ https://tera1707.com/entry/2022/02/06/144447#WinUI3 やりたいこと 以前書いた「WinUI3のウインドウの最大化ボタン無効化や、ウインドウサイズ変更をしたい」で、ウインドウについている最大化ボタン、最小化ボタンの無効化をどうやるか調べたが、…