かずきのBlog@hatena

すきな言語は C# + XAML の組み合わせ。Azure Functions も好き。最近は Go 言語勉強中。日本マイクロソフトで働いていますが、ここに書いていることは個人的なメモなので会社の公式見解ではありません。

2016-07-01から1ヶ月間の記事一覧

CordovaでProxyを突破しよう

まず、Node.jsのProxy設定が必要になります。 npm config set proxy http://ユーザー名:パスワード@example.com:8080 npm config set https-proxy http://ユーザ名:パスワード@example.com:8080 ユーザー名がメアドな人は@マークとかをエスケープしないとい…

WPFからUWPのAPIを使ってBLEの操作をしよう

WPF

さて、UWPのAPIを使えるということで先日アドバタイズパケットの受信をやりました。 blog.okazuki.jp 今度はBLEの通信をしてみたいと思います。 参考ページは以下。 blog.fenrir-inc.com そして、今回使うセンサーはSensorTagのv1です。 www.tij.co.jp Windo…

Office 365の機能をUWPから叩く方法

UWP

Office 365のAzure ADでアプリケーションを作成します。ネイティブアプリケーションとして作成しておきます。 他のアプリケーションに対するアクセス許可でOffice 365 Exchange Onlineを追加して適当なアクセス許可を与えておきます。 クライアントIDを控え…

ASP.NET(Azure WebApp)でMicrosoft.Office365.OutlookServicesを使って予定をとってくる

超苦労したのでメモっておきます。 まず、Office 365のテナントからいけるAzure ADにアプリケーションを追加します。追加したら、CliendIDとClientSecret(期限つきのキーのやつ)とTenantID(エンドポイントを表示したときに見れるやつ)をとっておきます。…

ReactiveProperty v2.9.0とv3.0.0-pre5をリリースしました。

id:neueccさんがプルリクをくれました。最近多いですね! www.nuget.org 今回追加された機能は、AsyncReactiveCommandクラスになります。Subscribeメソッドが非同期メソッドを受け取って、その非同期メソッドが実行中の間は自動的にCanExecuteをFalseにして…

BLEのアドバタイズパケット受信イベントの引数のBluetoothLEAdvertisementReceivedEventArgsからMACアドレスを取得する方法

UWP

argsがBluetoothLEAdvertisementReceivedEventArgsとしたとき、以下のコードで取得できます。 string.Join(":", BitConverter.GetBytes(args.BluetoothAddress).Reverse().Select(x => x.ToString("X2"))).Substring(6); 以下のGitHubのコードに書いてありま…

WPFでBLEのアドバタイズパケットを拾ってみよう

WPF

UWPのAPIを使ってできるかやってみます。 まず、WpfBleSampleAppという名前でWPFアプリケーションを作成してNuGetからUwpDesktopをインストールします。こいつは、UWPを使うために必要な設定をやってくれる便利な奴です。 次に、以下の記事を参考にアドバタ…

WPFのBehaviorをStyleで使う方法

昔書いた記事にコメントがついたので改めてやってみました。 blog.okazuki.jp 最近はGitHubがあるのでコードを共有するのが楽でいいですね。 こんなクラスを用意してやります。BehaviorをCloneして追加してやる感じです。Cloneして渡さないと同じBehaviorの…

PCLでHttpUtlitityのUrlEncodeとUrlDecodeを使いたい

C#

UriクラスのEscapeDataStringとUnescapeDataStringメソッドを使いましょう。 Console.WriteLine(HttpUtility.UrlEncode(s)); Console.WriteLine(Uri.EscapeDataString(s)); var encodedString = HttpUtility.UrlEncode(s); Console.WriteLine(HttpUtility.Ur…

Prism.WpfでPopupWindowActionで表示した要素の中でRegionManagerを使った画面遷移がしたい

というサンプルをGitHubにあげました。 github.com 結構RegionBehaviorを使ったりBehaviorを使ったり頑張ってます。 ここら辺が現実的な妥協点かもしれませんと思います。

WPFでPrismをライトウェイトに使いたい「Hello world」

WPF版Prismは使いこなすと強力です。でも使いこなすの大変です。ハイ。学習コストかけてられないし、学習コストかけたからといって1個のアプリ開発で、そのコストを回収できるかもわかりませんですしね。 ということで、なるべくライトにPrismを使ってみたい…

Prism.Wpfで子WindowでRegionを使う方法

アップデート もうちょっと頑張ったサンプルをGitHubに公開しました。 github.com 古い内容 PopupWindowActionで表示するWindow内で画面遷移したい!とかいうことがあると使えないんですよね。ということで解決策として、RegionManagerを新しく作って、それ…

WPFでTextBoxに入力エラーがないときだけ押せるボタンを実現したい

1つ前でVMでやるのがおすすめですよって書いたけどどうやるの?っていう記事です。 blog.okazuki.jp 今回はReactivePropertyの組み込みのエラーチェック機能を使ってやってみます。まず。intしか受け付けないValidationAttributeを作ります。 using System.C…

WPFでTextBoxに入力エラーがないときだけ押せるボタンをXAMLで実現したい

WPFでint型をバインドしたTextBoxとかって入力エラーがあると赤色枠がついていい感じにしてくれますよね。ただしViewModelからは、そのエラーは検知できない。 でも、ボタンは押せないようにしたい。そんなときは、こんなXAMLで実現できます。

Metro.cs#2 WPFからみるMVVM で WPFから他プラットフォームへの展開というテーマで話してきました #metrocs

doc.co 資料を公開しておきます。今回からSlideShareじゃなくてdocs.comにしてみました。 Modelをしっかり作ろうぜ!っていうことでちょびっと話してきました。 試行錯誤した結果なので、これが正しいかはわからないですが…。まぁ一例ということで。

Xamarin.FormsでListViewのItemTemplate内のボタンにPageにバインドされているVMにあるCommandをバインドする方法

こういうの悩みますよね。例えば以下のようなViewModelがあるとします。こいつのAlertCommandに選択項目を渡したいというケースです。 using System.Collections.ObjectModel; using System.ComponentModel; using System.Diagnostics; using System.Linq; u…

ReactiveProperty v3.0.0-pre2をリリースしました

.NET Standard 1.1としてビルドできたのでNuGetに放流しました。 ただ、nuspec書くのがだるかったのでnetstandard1.1とかのフォルダは切ってませんので、今までと使う側としては何も変わりありません。 www.nuget.org UWPに参照追加するとビルドエラーになる…

ReactiveProperty v3.0.0-pre1を放流しました

Reactive Extensions 3.0対応です。 www.nuget.org 要注意バージョンです! 私の環境で、.NET Framework 4.6での動作は確認できました。動作しなかったプラットフォームは以下になります。 Xamarin UWP 何故かNuGetで参照追加するだけでコンパイルエラーにな…

かずきのUWP入門をKindleでも販売をはじめました

UWP

基本SlideShareに置いてあるのでそちらをどうぞ。SlideShareにログインすると資料のちょい下あたりのボタンにDownloadっていうのがあるので、そこからDLできます。 かずきのUWP入門 from 一希 大田 www.slideshare.net Kindleでも読みたいとか投げ銭的な感じ…

ReactiveProperty v2.8をリリースしました

リリースしました。 www.nuget.org id:neueccさんのプルリクのおかげで、今まで一手間必要だったコンソールアプリやLINQPadでのReactivePropertyの利用が簡単になりました。(今までデフォルトだと例外はいてたのが、例外はかなくなった) あと、Blogにリク…

かずきのUWP入門というPDFをSlideShareに公開しました

UWP

最近Blog書かないで何してたかというとワードでせっせと書いてました。あんまり日本語のUWPの本がないんで書きましょう!ということで。まずはSlideShareに公開しました。ダウンロードを許可してるので、是非ダウンロードして読んでください。 かずきのUWP入…

Microsoft MVP for Windows Developmentを今年も受賞できました

Microsoft MVP for Windows Development!今年も無事受賞出来ました。また1年よろしくお願いします。 ReactivePropertyのメンテとUWP関連の情報発信などに力を入れたいと思います!(といいつつ直近2回の登壇予定はWPFだったりする)