かずきのBlog@hatena

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

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

UWPのApplicationData.Currentのデータをバージョン管理する

UWP

アプリの設定とかはApplicationData.Currentの下のLocalSettingsとかRoamingSettingsとかを使うのが一般的ですよね。ここの設定がアプリのバージョンアップによって非互換が発生してしまった!?というときに使える小技を紹介します。 ApplicationData.Curre…

NuAns NEOレビュー

先日de:code 2016の開発者キットに申し込んでNuAns NEOが当たりました。 https://neo.nuans.jp/ NuAns NEOといえば、カバーを自由に選べて2色チョイス出来ることで有名です。 色の組み合わせで個性が出る点とても新しくていいですよね。 私は、上下別ではな…

UWPでスクリーンショットを取らせないようにする

UWP

今日のde:codeのセッションで知ったことをメモしておきます。 UWPでは、以下のプロパティをfalseに設定することでスクリーンショットを取られることを抑止できます。 画面キャプチャされて、機密情報漏えいなくなりますね! // これを入れる ApplicationView…

UWPで一定間隔で表示が切り替わるPivotを作ろう

UWP

小ネタです。ViewModelあたりにSelectedIndexというプロパティをはやして、これを一定時間でインクリメントするようにします。 UIスレッド上でやるのがポイントですね。DispatcherTimerかRx使うのがいいでしょう。(RxのInterval使う場合はObserveOnでUIスレ…

DIコンテナのUnityで使用されるコンストラクタを指定する

C#

InjectionConstructorAttributeを使用します。指定しない場合はコンストラクタ引数の一番多いものが使われます。 例えば以下のようなケース。 public class Hoge { public Hoge(Foo foo, Bar bar) { } public Hoge(Foo foo) { } } だと、Foo foo, Bar barの…

うまくいかない…DataFactoryを使ってSQL Databaseの中身をData Lake Storeにコピーする

DataFactoryでコピーするだけなのにうまくいかない 何が足りてないんだろう要調査。誰か教えて。 やったこと まず、East US2(DataLakeの置き場の都合)にData Lake StoreとSQL Databaseを作成します。 SQL Database側に以下のようなテーブルを定義しておきま…

Entity Framework Core RC2がリリースされたみたいです

blogs.msdn.microsoft.com 待ちに待ったリリースに向けてあと一歩といったところですね! UWPで使うときに必要だったおまじないも消えてるっぽい(未確認だけどドキュメントに記載されてない)ので気軽にUWPで使えるようになったっぽいです。UWPでSQLiteを使…

HoloLensおさわり会の紹介

先日もBlogに書いた、slikyfeelさんの開催しているHoloLensおさわり会ですが、日本各地で開催されてます。 直近は、今夜申し込み締め切りの岡山で開催のやつです。 hololens.connpass.com そのほかに、名古屋、博多、愛媛・松山など、結構いろんなところで触…

UWPでWindowのアクティブ状態を取りたい

UWP

ほしいときにぱっととる事はできなさそうです。 ということで、Window.Current.CoreWindowのActivatedイベントでとっておく必要があります。 こんな感じで // どこかでイベントを購読して Window.Current.CoreWindow.Activated += CoreWindow_Activated; // …

UWPでgeneric.xamlを開く方法

UWP

基本的な色とかが定義されてるgeneric.xamlですが、こいつをたまに見たいことがあります。 そんなときどうするか? プロジェクトを新規作成してMainPage.xamlのApplicationPageBackgroundThemeBrushでF12を押します。 そうするとgeneric.xamlをさくっと開け…

UWPのItemsStackPanelで画面外に生成される項目の要素数を制御する

UWP

UWPのListViewって仮想化されますよね? そのとき画面から見えてない領域にどれくらいの要素を生成されるのかという話しですが、これはCacheLengthプロパティで制御できます。 デフォルトは4で、このとき上に表示領域の4個ぶん、下に表示領域の4個ぶん、表示…

Xamarin.FormsでInfragistics製コンポーネントのチャートコントロールを使ってみる

InfragisticsさんはXamarin.Forms向けのコントロールも提供しています。今時点だとチャート系コントロールを提供しているみたいなのでちょっと使ってみましょう。 Xamarin.Forms v2.0対応っぽいのでバージョンを2.2とかにあげてしまわないように注意が必要そ…

LINQのメソッド構文、クエリ式の構文

C#

LINQってメソッド構文とクエリ式の構文の2つがあります。どっち使います?という話ですが個人的な見解として、メソッド構文がLINQの全機能にフルアクセスできるという点でメソッド構文を使用しています。 LINQのメソッド構文とクエリ式の構文の対応は以下の…

ReactivePropertyのコードスニペット

ReactivePropertyをインストールすると、地味にコードスニペットもNuGetパッケージ内に入ってます。ただインストールはされないので自分でインストールが必要です。 コードスニペットマネージャーからpackages/ReactiveProperty.2.x.x/Snippet/csharp6フォル…

C#で好きな機能

C#

Blogネタが尽きたので小ネタを。 C#でプログラムする時によく使う便利機能を3つ挙げたいと思います。 async/await やはりC#といったらこれですよね。 非同期処理を簡単に書ける。 blog.okazuki.jp これがない言語でのプログラミングは、結構ストレスです。コ…

ReactivePropertyで自動でUIスレッドにイベント発行を変えるのを抑止する その2

blog.okazuki.jp 上記記事では、ViewModelの中でSynchronizationContextSchedulerを作成していましたが、これだと単体テストが辛いということになります。これをいい感じにするには、ちょっと工夫がいるのですが…。例えばPrism.Unityを使うと以下のようにVie…

ReactivePropertyで自動でUIスレッドにイベント発行を変えるのを抑止する

普通はいいんですが、UWPとかでマルチウィンドウとか、共有コントラクトとか使うとUIスレッドが複数生成されて、UIスレッドが1つという前提に立ってるReactivePropertyだと、ちょっと嫌な感じになってしまいます。 そんなときは、Appクラスの初期化処理で以…

Xamarin版PrismでViewとViewModelの紐づけルールを変える

PrismはデフォルトでViews名前空間にあるViewとViewModels名前空間にあるViewModelを紐づける機能を持っています。この機能を有効化するには、PageのXAMLに以下の2行を追加します。 xmlns:prism="clr-namespace:Prism.Mvvm;assembly=Prism.Forms" prism:View…

JXUGC 13回で発表してきました #JXUG

「Prism.Formsについて」というタイトルで、発表してきました。 Prism.Formsについて from 一希 大田 www.slideshare.net ライブコーディング失敗しなくてよかった。

Xamarin版PrismのDependencyServiceサポート機能

Prism.Formsは、基本的にUnity(DIコンテナのほう)を使ってます。 こいつを使うとインスタンスの組み立てとかをお任せ出来るので楽ちんなのです! Prism.Formsでは、そんなUnityの機能を拡張して、DependencyServiceから取得するインスタンスを自動でインジェ…

Prism.WpfのApp.configによるModuleCatalogの構成の仕方をPrism自習用リポジトリに追加しました

Prism Template Packを使うと簡単にApp.configによるModuleCatalogの構成ができるということで、今まで書いてなかったそこの部分についてPrism自習用リポジトリに追記しました。 github.com

ReactivePropertyオーバービューを更新しました。

blog.okazuki.jp 「そのほかにも」という箇所から簡単にですが、ReactivePropertyで追加しているIObservableの拡張メソッドで、紹介していないものを書いてみました。

Xamarin版Prismの次のバージョンでの変更点

Xamarin版PrismのPrism.Formsですが、Xamarin Evolve 2016が終わってから更新頻度が上がってます。 次のリリースに向けて動き出してるって感じですね。 ただ、5月7日にPrism.Formsについてセッションをする身としては、次のバージョンがいつ出るのかドキドキ…

PrismのApp.configのエディタ

Prismのテンプレートパッケージを入れるとApp.configのエディタが追加されます。 visualstudiogallery.msdn.microsoft.com App.cinfigを右クリックするとOpen with Prism Module Editorというのが表示されます。 これでApp.configを開くと以下のようにモジュ…

ReactivePropertyの英語ドキュメントを更新しました

誰か英語得意な人プルリク頼む! github.com

Windows FormsからWPFやUWPに来て戸惑うこと

Buttonに文字を設定するのにTextじゃないということ。 Contentプロパティに設定しないといけないというやつですね。 ふむふむ、コンテンツね…って覚えたらTextBlockはTextプロパティなのかよ!という理不尽な扱いを受けてしまいます。 これの見分け方なんで…