sh1’s diary

プログラミング、読んだ本、資格試験、ゲームとか私を記録するところ

デジタル庁 デザインシステムの整理

デジタル庁が公開している「デザインシステム」の内容を自分用に整理しました。 デザインシステムとは? (手引き) カラースタイル デザイントークン キーカラー 共通カラー 機能カラー アクセントカラー セマンティックカラー ニュートラルカラー プリミテ…

C# CommunityToolkit.Mvvm 8.2 の確認

ランキング参加中 プログラミング .NET Community Toolkit 8.2! .NET Community Toolkit には何がありますか? (What’s in the .NET Community Toolkit? ) Custom attributes [RelayCommand] 新しい ObservableProperty の変更フック⚗️ MVVM Toolkit の Cod…

C# CommunityToolkit.Mvvm の学習9 collections

ランキング参加中 プログラミング ObservableGroup<TKey, TElement> and ReadOnlyObservableGroup<TKey, TElement> Sample ObservableGroup<TKey, TElement> features ObservableGroupedCollection<TKey, TElement> and ReadOnlyObservableGroupedCollection<TKey, TElement> ObservableGroupedCollection<TKey, TElement> features 参考 Obs…</tkey,></tkey,></tkey,></tkey,></tkey,></tkey,>

C# CommunityToolkit.Mvvm の学習8 IoC

ランキング参加中 プログラミング IoC (Inversion of control) サービスの構成と解決 (Configure and resolve services) コンストラクタの注入 (Constructor injection) Viewmodel は "constructor injection" て、どうなの? (What about viewmodels?) 参考…

C# CommunityToolkit.Mvvm の学習7 Messenger

ランキング参加中プログラミング Messenger どのように機能するか (How it works) 送信 - 送信と受信メッセージ (Sending messages - Sending and receiving messages) Sample リクエストメッセージの使用 (Request messages - Using request messages) Samp…

C# CommunityToolkit.Mvvm の学習6 RelayCommand

ランキング参加中プログラミング RelayCommands どのように機能するか (How it works) ICommand の働き (Working with ICommand) Sample AsyncCommands どのように機能するか (How it works) 非同期コマンドの働き (Working with asynchronous commands) Sam…

C# CommunityToolkit.Mvvm の学習5 ObservableValidator

ランキング参加中プログラミング ObservableValidator どのように機能するか (How it works) 単純な例 Sample カスタム検証のメソッド (Custom validation methods) カスタム検証の属性 (Custom validation attributes) 参考 ObservableValidator Observable…

C# CommunityToolkit.Mvvm の学習4 ObservableObject

ランキング参加中プログラミング どのように機能するか (How it works) 単純な例 サンプル non-observable モデルのラッピング Task の扱い (Handling Task properties) Sample 参考 ObservableObject は、INotifyPropertyChanged と INotifyPropertyChangin…

C# CommunityToolkit.Mvvm の学習3 RelayCommand + INotifyPropertyChanged

ランキング参加中プログラミング RelayCommand 属性 How it works(どのように機能するのか) Command パラメーター 非同期コマンド (Asynchronous commands) コマンドの有効化と無効化 (Enabling and disabling commands) コマンドの同時実行の処理 (Handli…

C# CommunityToolkit.Mvvm の学習2 ObservableProperty

ランキング参加中プログラミング ObservableProperty の属性 ObservableProperty の属性 How it works(どのように機能するのか) Running code upon changes(変化に応じた実行コード) Notifying dependent properties(依存プロパティの通知) Notifying …

C# CommunityToolkit.Mvvm の学習1

ランキング参加中プログラミング MVVM Toolkit のサンプルプログラム Introduction to the MVVM Toolkit で、MVVM Toolkit パッケージはいつ使うべきなの? MVVM Source generators 参考 WinUI3 でも利用できる MVVM として「MVVM Toolkit」の学習をはじめま…

Buffalo EasyMesh WiFi は1つの回線に複数設定しない(注意点)

PC

コントローラーの条件 トラブルの実例 対応策 参考 家の WiFi 環境を EasyMesh にするときの注意点を知ったのでメモ。(知っている人からすると当たり前のことだと思うのですが)基本的には、EasyMesh は1回線につき1つの EasyMesh のみを設定すること、と…

WPF JumpList の使い方について

JumpList 使い方の例 参考 WPF のアプリを作っているときに JumpList を使おうと思ったときに、システムトレイアイコンのメニューとの使い方の違いを再認識しました。その内容をメモ。 JumpList JumpList は Windows 7 から追加された windows の機能です。 …

WPF ToggleButton 注意点の整理

ToggleButton のデザイン ToggleButton のイベント コード上からの注意点 余談:添付プロパティで対応できるか? 参考 タイトルのとおり、WPF のコントール ToggleButton の使い方についてのメモです。ToggleButton は、通常のボタンに加えて IsChecked プロ…

C# TimeProvider の利用について (.NET8)

この記事は「Qiita - C# Advent Calendar 2023」に参加しています。 C# には、時間を表現するクラスに DateTime と DateTimeOffset があります。.NET 8 から TimeProvider クラスが新しく用意されました。 TimeProvider クラスは .NET8 の新機能のひとつ「時…

2023 年 会社勤めの買ってよかったモノ、まとめ

12月の風物詩。毎年やっているけど、買って損していないのかチェックみたいな気もする。 QOL 関係 小型冷蔵庫 キーボード 文具 レバーレスコントローラー作成 PC 関係、スマートフォン関係 運動 本 総括 履歴 例年実施していた購入物の写真は後日追加でき…

C# なるべく高精度な Timer を使う

C# の Timer 事情 補足:自分で sleep を利用したタイマーを作る場合 Windows マルチメディアのタイマー実装の注意 実装するときの P/Invoke 太古の情報 サンプル 参考 Windows において、高精度なタイマーを実装するのは 2000 年以前から難しい(困難)こと…

WinUI3 App.xaml (App.xaml.cs) をカスタマイズする

ランキング参加中プログラミング ファイル構成(App.xaml) AppExBase クラスの実装 AppEx の実装 App.xaml.cs の実装 参考 App.xaml は全体で使うリソースを宣言するファイルで、App.xaml.cs は(主に)アプリケーションのエントリーポイント。 WPF でも Wi…

Win UI3 の入門(1)hello world

Windows App SDK (WinUI 3) とは Win UI の補足 Hello World 環境構築とプロジェクトの作成 プロジェクトの初期構成ファイル デバッグの実行テスト ウィンドウ画面の作成 参考 この記事は、Windows App SDK の使い方について学んだ基本的な内容をアウトプッ…

Visual Studio Extension 拡張機能 (VSIX) を作成する

Visual Studio 拡張機能 拡張機能の開発デバッグ プロジェクトの構成について コマンドを追加する コマンドのローカライズ 公開する GitHub 参考 Visual Studio の拡張機能を作成したときの内容をメモします。 今回、拡張機能を作成しようと思ったきっかけは…

WPF UI(UI ライブラリ)の使い方(2)Snackbar 編

SnackBar XAML の設定 (最適ではないけど)動作する最小サンプル Prism の DI を使った例 参考 WPF の GUI ライブラリ「WPF UI」を使ってみる機会があったので、基本的な使い方をメモ。 シリーズの2つ目です。 WPF UI(UI ライブラリ)の使い方(1) 今回…

WPF UI(UI ライブラリ)の使い方(1)

インストールと初期設定 補足(直接指定) 補足(テーマの指定) XAML からライブラリを利用するための設定 システムのテーマを適用する メニュー 参考 WPF の GUI ライブラリ「WPF UI」を使ってみる機会があったので、基本的な使い方をメモ。 WPF の GUI ラ…

Unity Legacy Sprite Packer と Simple Sprite Packer の更新

古い記事で sprite をインポートする際は、Simple Sprite Packer のプラグインを使用していました。ここ数年の間、Unity をあまり触れることができなかったのですが、久しぶりにアプリを作る際に sprite の読み込みでこの Assets を使用すると obsolete の表…

Unity FPS の設定変更のやり方

Unity のアプリを作っているときに FPS を設定する機会がありました。 レバーレスコントローラーを練習するアプリを作ろうと思ったんで、60FPSに固定してやる必要がありました。ちなみに、こんな雰囲気のアプリになりました。(Android で動かして遊ん…

Blazor 入門1(どういうものか?)

私は主に WPF などの windows 環境向けのアプリケーションを今でもよく作るプログラマーなのですが、Blazor に触る機会ができたので、とても基本的なところからどういったものなのか、「Blazor入門」を読みつつ、学習した内容をアウトプットしたいと思います…

huggingface まとめてファイルをダウンロードする

コマンド 参考 huggingface から ControlNet で使用するモデルをダウンロードする方法をメモ。 ひとつひとつダウンロードしてもよいのですが、python を使えばまとめてダウンロードすることが可能です。 コマンド 最初に python が使えるかどうかをテストし…

GP2040-CE の使い方 初期設定(+SOCD について)

ゲームで使うコントローラーを自作しました。コントローラーのコアになる部分は、Raspberry Pi Pico を利用しました。 現在はレバーレスコントローラーに改造された Raspberry Pi Pico に GP2040-CE という Firmware を書き込むことで、ゲームコントローラー…

C# Prism DialogParameter の実装(学習)

Prism ライブラリーには、「Dialog Service」というものがあります。 利用してみるとこれがとても便利。また、ポップアップしたウィンドウに対して値渡しをする仕組みとしても面白いと思います。仕組みとして考えられているので、自分でもこうした拡張を予想…

C# OS にインストールされているデフォルトプリンター情報を取得

以前、.NET Framework 時代の記事だけど「C# OS にインストールされているプリンターのアイコンを取得」を書いた。 デフォルトのプリンター名も取得したくなったので、改めて .NET 用に書き直したのでメモ。 できること デフォルトのプリンターの名前を取得 …

C# NLog を利用したプログラムサンプル

NLog を利用する手順 Debugger File ソースコード上からの Logger アクセス サンプル 参考 NLog を実際に利用するために、サンプルを作成した。サンプルでは「Window起動時のイベント発生順位」と同じ内容を実行してみた。気になる点があったので、自分でも…