nuits.jp blog

C#, Xamarin, WPFを中心に書いています。Microsoft MVP for Visual Studio and Development Technologies。なお掲載内容は個人の見解であり、所属する企業を代表するものではありません。

WPF

WPF&xUnitでテストコードからViewオブジェクトを生成する方法

例えば次のコードがあったとします。 [Fact] public void WhenClosed() { var window = new Window(); } これを実行すると次のようなエラーがでます。 UIはテストしないんじゃないの?と言われそうな気もしますが、Windowに貼り付ける汎用Behaviorをライブラ…

Prism 6.3.0がリリースされました

去年末からリリースの待たれていたPrism 6.3.0が先ほどリリースされました。 https://github.com/PrismLibrary/Prism/wiki/Release-Notes-6.3.0 今回のリリースはXamarinから見ると非常に多くの魅力的な機能追加が含まれています。 画面遷移時に、遷移前処理…

PrismでViewModelがバインドされないときの調査方法

私も良くやるので、もっとも有効な調査方法をさらっと書いておきます。

PrismでViewとViewModelのアセンブリを分けたい場合

なんらかの理由で、ViewとViewModelのアセンブリを分割したいことがあるかと思います。 ViewModelからViewをうっかり呼ばせたくない ViewModelをきちっと分離して複数のViewから再利用したい なんだかカバレッジでViewModelを綺麗に100%にしたいなあ 趣味 な…

System.Drawing.BitmapとImageSourceを相互変換する

WPFで利用されている画像オブジェクトであるImageSourceと、WinFormsなんかで利用しているSystem.Drawing.Bitmapを相互変換したい場合がたまにあるため、ここにメモを残しておきます。

WPFでの画像処理の基本

WPFではそれまでのWinFormsとは違い、WICベースのImageSourceクラスやBitmapImageクラスなどを利用して画像処理を行います。 Windows Imaging Component - Wikipedia ただ、あまり情報が少ないというか、「.NETで画像処理=System.Drawing」な情報ばかりでて…

Prism for Xamarin.Forms入門 コラム01:PrismとDIコンテナ

さて、前回はPrism.FormsのHello, Worldの記事を書かせていただきました。 nuits.hatenadiary.jp 今回以降は、いよいよ個々のエッセンスを掘り下げて行きたかったのですが...どの話をするにしても、「なぜその機能が必要なのか?」を説明しようとすると、ど…

WPFのRenderTransformとLayoutTransformの違いについて

WPFのTransformクラスには画面要素を変形するためのいくつかの機能が用意されており、拡大縮小なんかを簡単に実現することができます。 仕事がら、これを使って画像ビューアなんかを良く作っているのですが、うっかりしていて少しハマったのでメモを残してお…

WPFやXamarinのICommandを改めて整理する [2016.07.10 改定]

2016.07.10 改定 XamarinにRelayCommand的なデフォルト実装がある事を @qwerty2501 に教えていただき修正しました。 ありがとうございました。 先日(7月7日 木曜日)エクセルソフトさんのビジネスセミナーに行ってきました。 その数日前に 田淵さん:「Rela…

Xamarin.Formsでイベントに反応してCommandを実行するBehaviorを書いてみた

数日前にAyaseってIDのオータガーさんと、下のような会話をしました。 @AyaseSH TriggerでOnAppearingイベント捕まえてCommandバインディングとかじゃ上手くいかない感じですかね?それともOnAppearingの実行中の状態(始まり~終わりまで)を正確に欲しい案…

WPFのBindingのElementNameとx:Referenceの違いについて教わりました

昨日ブログを公開したところ、Xamarinの中の先生にElementNameとx:Referenceの違いについて気になる点を教えていただきました。 というわけで、補足となるエントリーを書き起こしておこうかなと。 なお表題のとおり今回はXamarinではなくてWPFのお話です。 …

WPFのWebBrowserでJavaScriptのエラーを抑止する

WPF

JavaScriptでエラーが発生すると、標準だと以下のようなダイアログが表示されます。 FormsのWebBrowserだとプロパティを変更するだけですが、WPFだと少し分かり難いです。 本エントリーではWPFのWebBrowserでJavaScriptのエラーを抑止する方法を記載します。

WPFのWebBrowserでWindow Openイベントをインターセプトする

WPF

WebBrowserコントロールを利用している際に、JavaScriptでopenメソッドを呼ばれるなどで新しいWindowを開かれるとポップアップでIEが開かれてしまい、制御がプログラムから外れてしまいます。 本エントリーでは新しいWindowが開かれる前にイベントをインター…

WPFのWebBrowserでHttpOnlyなクッキーを取得する

WPF

表題の通りです。 WebBrowserクラスのDocumentクラスから取得すると、通常のクッキーは取得できても、HttpOnly属性のついているクッキーは取得できません。 本エントリーではその方法を説明します。

WPFのWebBrowserでUserAgentを偽装する

WPF

WPFで作ったアプリケーション内にWebBrowserを埋め込んで、そのWebBrowserで任意のUserAgentを利用する方法を記載します。 解決すれば何てことは無かったのですが、案外ハマったのでメモを残しておきます。