WPF のアプリケーションで TextBlock コントロールに UnicodeのEmoji を色付き絵文字として表示したいということで、試行錯誤していい感じに使えるようになったので、記事にしておきます。
実現したいこととしては、次の3点がありました。
- UnicodeのEmoji を色付き絵文字として表示したい。
- リンク付きのテキスト表示を行いたい。
- View Model からデータ表示を行いたい。
WPF のアプリケーションで TextBlock コントロールに UnicodeのEmoji を色付き絵文字として表示したいということで、試行錯誤していい感じに使えるようになったので、記事にしておきます。
実現したいこととしては、次の3点がありました。
System.Net.Http.HttpClient クラスを使用して HTTP サーバーと会話を行った際のソケットの使用と DNS サーバーの A レコードを変更した時の振る舞いの調査を .NET Core 3.1 及び .NET Framework 4.5.2 で行ってみた結果です。
続きを読む HttpClient の振る舞いの調査C# の byte 配列に対して、文字列検索を行うメソッドは標準では用意されていません。でも、必要に迫られることはあるわけで、文字列照合アルゴリズムの一つ「Boyer-Moore(BM)法」を改良したアルゴリズム「Sunday のアルゴリズム (Sunday Algorithm)」の C++ で書かれたサンプルプログラムを C# にポーティングしました。
続きを読む byte 配列での文字列検索
前回に引き続き DI コンテナ Unity の利用についてです。
前回は WPF の MVVM パターンでの Unity DI コンテナの利用について、DI コンテナの設定まで説明したので、その続きです。 続きを読む DI コンテナ Unity の利用(その5)
前回に引き続き DI コンテナ Unity の利用についてです。
前回はコンテナの受け渡しと複数インスタンスの注入について記述したので、今回は WPF の MVVM パターンでの Unity DI コンテナの利用について記述します。 続きを読む DI コンテナ Unity の利用(その4)
前回に引き続き DI コンテナ Unity の利用についてです。
前回は注入されるインスタンスの生存期間がコンテナと同一となる ContainerControlledLifetimeManager を設定したときの動作について記述したので、今回はコンテナの受け渡しと複数インスタンスの注入について記述します。 続きを読む DI コンテナ Unity の利用(その3)
前回に引き続き DI コンテナ Unity の利用についてです。
前回は基本的なものを記述したので、今回は注入されるインスタンスの生存期間がコンテナと同一となる ContainerControlledLifetimeManager を設定したときの動作について記述します。 続きを読む DI コンテナ Unity の利用(その2)
いまさらですが、DI コンテナの Unity について、使い方などをちょっと調べてみたので、備忘録を兼ねて書いてみます(統合型のゲーム開発環境の Unity の話ではありません。念のため 😉 )。
言うまでもなく DI コンテナのほうの Unity は、Dependency Injection(依存性の注入)の機能を提供するフレームワークで、コンストラクター注入、プロパティ注入、メソッド呼び出し注入の機能がありますが、ここでの話はコンストラクター注入に絞り込みます。 続きを読む DI コンテナ Unity の利用(その1)
ある値を取得するプロパティがあって、その値は別メソッドが実行されることにより非同期に変更される場合、読み込みと書き込みの間で同期をとるようにしたうえで、書き込み動作が終了するまで待機状態が発生することになることから、非同期メソッドのように取り扱いたいことがあります(二分探索木から最小値を取得するプロパティなど。。。取得する機能をプロパティではなくて非同期メソッドで実装すればいいという話もありますが)。
つまり、UI スレッドをブロックしないように、次のように書きたいわけです。
a = await classA.PropertyAsync;
Microsoft が新たに Visual Studio Community 2013 をリリースしましたね。
これまでは、Express 2013 for Web と Express 2013 for Windows Desktop を使い分けてきましたが、Visual Studio Community 2013 では、Visual Studio Professional 相当の機能が利用できることから、使い分けの不便さや Visual Studio の拡張が利用できない不便さから開放されます 😎 続きを読む Visual Studio Community 2013