SourceChord

C#とXAML好きなプログラマの備忘録。最近はWPF系の話題が中心です。

XAML Advent Calendar 2017を作りました

今年も技術系アドベントカレンダーの時期が近づいてきましたね。
Qiitaでも色々なカレンダーが作られ始めていたので、今年もXAMLアドベントカレンダーを作っておきました。

去年は12月になってからカレンダー作ったせいもあってか、あまり人は集まりませんでした。
一人アドベントカレンダーのノリで書ききろうかとも思ったけど、さすがにネタが続かず結局力尽きてしまいました・・・

今年はFluent Design SystemとかXAML Standardなど、XAMLに関する発表もいろいろあったし、たくさん集まるといいなぁ。

ImageSharp v1.0.0beta1がリリースされたので使ってみた

.Netの様々な環境で動作する、ImageSharpという画像処理ライブラリのv1.0.0beta1がリリースされました

github.com

以前.NET blogの↓の記事などでも紹介されてたライブラリです。
https://blogs.msdn.microsoft.com/dotnet/2017/01/19/net-core-image-processing/

他のクロスプラットフォームな画像処理ライブラリ(ImageMagickやSkiaなど)には依存せず、すべてC#で実装されてます。
また、.NET standardなライブラリになっているので、
通常の.NET Framework環境だけでなく、UWPなどの環境や.NET Core環境、Xamarin環境などでも使えるようです。

ImageSharpで提供してる機能などは、↓のページにまとまっています。
https://github.com/SixLabors/ImageSharp/blob/master/features.md

画像の読み書きだけでなく、色々な画像処理の定番アルゴリズム類や図形描画などの機能も実装されてます。

個人的には、.NET環境での画像処理ライブラリの大本命になるんじゃないかな、、と思ってて、 リリースされるのを首を長くして待ってました。
(といっても、今回はβ版のリリースなので、正式なリリースはまだまだ先でしょうが・・・)

続きを読む

FontAwesome.WPFを使ってみた

Web系の開発でアイコン表示などによく使われているFontAwesomeというものがあります。
サイト上でよく使われるような様々なアイコンを、Webフォントとして利用できるようにしたものです。
Font Awesome, the iconic font and CSS toolkit

これをWPFやUWPなどから使えるようにした、FontAwesome.WPFというライブラリを使ってみました。 github.com

続きを読む

Windows Template Studio雛形コードの使い方~Pivot & Tabs プロジェクト~

今度は、Pivotを用いたプロジェクトを作ってみます。

Pivotのプロジェクトは、前回使用したBlankプロジェクトと共通点も多く、割とシンプルな構成になっています。
チェックすべき箇所も少ないので、CodeBehind版/MVVM Basic版の両方をまとめて見ていきます。

続きを読む

Windows Template Studio雛形コードの使い方~Blank & MVVM Basicなプロジェクト~

今度は、MVVM Basicな構成のプロジェクトを見ていきます。
この雛形は、シンプルなMVVM構成でコードを書く時には、割と使い勝手がいいかなと思います。

  • 準備
  • Code BehindとMVVM Basicのプロジェクトの違い
  • MVVMな設計のためのヘルパークラス類
    • ViewsとViewModelsフォルダ
  • サンプル
    • コマンド実行のEnable/Disable制御
続きを読む

Windows Template Studio雛形コードの使い方~Blank & CodeBehindなプロジェクト~

これから何回かに分けて、WindowsTemplateStudioで生成したプロジェクトが、どのような構造になっているか見ていこうと思います。

今回は最初なので、UWPの基本的な仕組みも含めて色々と試してみます。

  • プロジェクトの作成
    • 全体の構成
  • アプリのスタートアップ処理
  • ページ表示
    • MainPageクラス
    • MainPageへの処理追加
  • ページ遷移
    • ページの追加
    • 追加したページへの移動
    • 戻る/進む
  • ローカライズ処理
    • x:Uid属性とreswファイルを用いたローカライズ
    • 言語設定の切り替え
  • ヘルパークラス類
    • ResouceExtensionsクラス
    • Singletonクラス
  • スタートアップ処理の全体像
    • ActivationService & ActivationHandlerクラス
    • クラス構成
    • アプリ起動処理のカスタマイズ(ファイルの関連付け)
      • 動作確認
      • ファイル関連付けの解除
続きを読む

Windows Template Studioを使ってみた

Build 2017の動画とか↓のブログ見て知ったのですが、こんなVS拡張機能が出てきました。

Windows Template Studio - Visual Studio Marketplace

今まで、UWPプロジェクトの雛形は、空っぽなウィンドウが表示されるだけの、非常に簡素なものしかありませんでした。   ですが、この拡張機能を使うと、ナビゲーションやMVVMなどを取り入れたプロジェクト雛形を、自分でカスタマイズして生成することができるようになります。

ちなみに、今後6週間程度の間隔で更新を続けるようです。

これは便利かも!!

似たような立ち位置のものとして、Template10っていうのがあったんだけど、この辺との棲み分けってどうなっていくのかな??

続きを読む