かずきのBlog@hatena

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

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

ReactiveProperty v2.6-beta1をリリースしました

ということで、リリースしました。 www.nuget.org -Preつけてインストールしてください。 変更点 今までReactivePropertyではSchedulerを指定しない場合はUIDispatcherScheduler.Defaultで取得できるSchedulerを使用していました。今回のアップデートでReact…

UWPで画像を開いて表示しよう

UWP

FileOpenPickerとBitmapImageを使うことで簡単にできます。 表示だけならね! var picker = new FileOpenPicker(); picker.FileTypeFilter.Add(".jpg"); picker.FileTypeFilter.Add(".jpeg"); picker.FileTypeFilter.Add(".png"); var file = await picker.P…

UWPで色付きTextBlockを作ろう

UWP

Textプロパティに所定の書式に従った文字列突っ込んだらいい感じに色つけて表示してくれるTextBlockみたいなのが欲しくなることってないでしょうか。 そんな時は、TextBlockを1枚ラップしたカスタムコントロールかユーザーコントロールを作ると捗ります。今…

UWPで𩹉のような4バイト文字を扱う

UWP

Vistaからでしょうか。追加された4バイト文字とか2バイトに入りきらない文字たち。こいつら、stringとcharではうまく扱えません。 例を見てみましょう。 こんなXAMLを用意します。

Reactive ExtensionsでRateLimitを実装してみる

こんな感じ??Queueにいったん詰め込んで、Scheduler上でどんどん処理していく感じ。 1つ処理をするとカウントアップして、指定時間後にカウントダウンする。 static class RateLimitExtensions { public static IObservable<T> RateLimit<T>(this IObservable<T> se</t></t></t>…

UWPでTextBlock内にリンクを仕込む

UWP

TextBlockはTextプロパティに文字列を指定する以外に、InlinesにRun(テキスト)やHyperlink(名前の通りリンク)を埋め込んで、単純なテキスト以上の表示をすることが出来るようになっています。 例えば以下のようなXAMLを定義して

PythonでCSVを読み込んで欠損値を穴埋めするよ

まずは、Pythonのインストールから3.5を入れよう。 そしたら、DataFrame扱うためのpandasを以下のコマンドでインストール。 pip install pandas 終わったら以下のようなスクリプトを書いて実行! import numpy as np import pandas as pd df = pd.read_csv('…

C#でユニコードの文字コードで文字を指定する

C#

2.4.1 Unicode 文字エスケープ シーケンス (C#) に書いてある通り、\uXXXXを使います。例えば幅が0のスペースのノーブレークスペースの場合は、以下のように記述します。 "\u00A0"

duplicate 'row.names' are not allowedが出る

R

色々な原因があると思いますが私の場合はこういう感じでしたということで。 read.csvで表題のようなエラーが出て困ってました。 CSVのヘッダー行の列数とデータ部分の列数が異なっているためにこのエラーが出ました。 単純に異なってるわけじゃなくて、Excel…

UWPでファイルのドロップをしたい

UWP

以下のような感じでいけます。 まず、ドロップのターゲットにAllowDropプロパティをTrueにします。そしてDropOverイベントでドロップされたときの見た目を調整したりします。そして、Dropイベントで、イベント引数のDataViewプロパティのContainsメソッドで…

UWPでPrismを使ったプロジェクトを単体テストする

PrismUnityApplicationなんかを継承してると、単体テストに失敗します。このIssueですね。 github.com Issueにある通りAppクラスにBindableAttributeを付ければ単体テストが実行できるようになります。 using Prism.Unity.Windows; using System.Threading.T…

UWPで単体テストプロジェクトを使おう

UWP

UWPでの単体テストの使い方を簡単に紹介したいと思います。 UWPでは、単体テストも実態はUWPアプリとして実装されていたりします。 とはいっても使い方は他のプラットフォームと同じです。テスト対象のプロジェクトを含むソリューションにUWPの単体テストプ…

ListViewItemで選択されたときはマウスオーバーで色を変えたくない

UWP

ということもありますよね?(ない?) ListViewItemのテンプレートをいじればできます。 ただ、ListViewItemのテンプレートをコピーして編集しても、ListViewItemPresenterとかいうのがあるだけの小さなテンプレートでカスタムしようがありません。 ListVie…

Excelが日付型だと認識しないフォーマットの日付を日付として認識してもらう

マクロでさくっといけるみたいです。 stackoverflow.com Sub ConvertDates() Dim r As Range For Each r In Selection r.Value = CDate(r.Text) Next r End Sub こんなマクロを作って、mm/dd/yyyy hh:mm:ss AM/PMみたいな書式の日付を選択してマクロを実行す…

Hibernate(やSpring?)がProxy化してるJDBCのConnectionからoracle.jdbc.Connectionを取得する方法

ちょっと古傷を触ってしまってJavaってました。 HibernateなどからConnectionを取得した時に生のJDBCのコネクションをそのまま返すのではなく、Proxy化されてOracle固有の処理をしたくて困ったことがありましたとさ。解決策としてはgetMetaDataでMedaDataを…

UWPで地図を表示する

UWP

UWPのMapControlを使うことで簡単に地図を表示することが出来ます。 ちょっとめんどくさいのが、Bing Map デベロッパーセンターというところでトークンを作らないといけないところです。 www.bingmapsportal.com アカウントってMy accountのCreate or view k…

UWPでバックグラウンドでBLEの電波を受信する(未検証)

UWP

バックグラウンドでBLEの電波受けたら何かするっていうことが出来るようになってます。 用意するバックグラウンドタスクのクラスはこんな感じです。(Windows Runtimeコンポーネントのプロジェクトで作る必要があるのはバックグラウンドタスクのお約束ですね…

UWPでBLEのアドバタイジングパケットを拾ってみよう

UWP

Windows 10のWindows Runtimeには、BLE関連のAPIがちょろちょろ追加されています。 これを使うと、Windows 8.1の頃にはできなかったBLEのアドバタイジングパケットを受信することが出来ます。 要はiBeaconの電波受信して何かするようなアプリが簡単に組める…

Notification Hubを使ってお手軽にUWPでプッシュ通知をする

トースト出したりするだけなら簡単に実装できるんですね。 Notification Hubの作成 AzureでNotification Hubを作成します。 私はokazukinsという名前空間でokazukinhというNotification Hubを作りました。 作ったら、WNSの情報を入れます。Windows Developer…

UWPで戻るボタンなどがソフトキーの場合の表示領域の取り方

UWP

ApplicationView.VisibleBounds | visibleBounds property - Windows app development ↑のプロパティで取れます。 ApplicationView.GetForCurrentView().VisibleBounds

Surface Pro 3の箱が閉まらない

Surface Pro 3の箱が閉まらないと混乱してる人がいるみたいです。 shinji-japan.hatenadiary.jp 上記Blogにもある通りBy design.ですね!

画面の録画をするPowerPointのAddIn

2016/02/13 追記 @okazuki かずきさんへ、Office 2016なら画面の録画なら標準でできます、ふぁぼツバメより pic.twitter.com/1lrPzxEc6B— 幻想ツバメ (@f_swallow) 2016, 2月 13 なんてこった…。しかもOffice 2013からだったとか。これは知らなかったですね…

UWPで指定した場所に存在するコントロールを列挙する

UWP

マウスカーソルの場所にあるコントロールに対して操作をしたいとかいう結構特殊な要件のときに使えるテクニックです。 VisualTreeHelperクラスのFindElementsInHostCoordinatesメソッドを使うと指定した点(Point)や、領域(Rect)にあるUIElementをとって…

UWPでパララックススクロール

UWP

1つ前の記事で、あんまりうれしくない例でWindows.UI.Compositionの紹介をしました。 blog.okazuki.jp Windows.UI.Compositionを使った強力なところは文字列で式を指定して、その結果をもとにアニメーションするということが出来る点だと個人的に思ってます…

Windows Runtimeの低レベルなグラフィックのAPI

UWP

ビジュアル レイヤー - Windows app development Windows.UI.Compositionという名前空間あたりに定義されてるAPIがあります。これは、Windows 10で導入された割と低レベルなグラフィック関連のAPIみたいです。C++でがっつりとDirectXみたいなレイヤまで低レ…

C言語の教科書に登場するひろ子さんをC#で書いてみよう

togetter.com ひろ子さんは、他人の身長を180㎝にしてしまう能力があるみたいです。 例えば、ひろ子さんの能力をC#のメソッドにしてしまうと以下のようになるでしょう。 using System; namespace Kowai { class Program { static void Main(string[] args) {…

UWPからIoT Hubにデータを投げる

世の中IoTですよね。Windows 10のIoTから、クラウドにデータを上げたい! ということでやってみましょう。 まず、コンソールアプリを作って、NuGetでMicrosoft Azure Devicesで検索して出てきたものを追加して、以下のコードでデバイスキーを作ります。 usin…

WPFのDataGridにstringの2次元配列をバインドしたい

WPF

小ネタです。WPF(に限らずですが)のBindingは、配列の要素にインデックスでアクセスが可能です。 なので、以下のようなBinding式を書くことで、配列を表示することが出来ます。

Azure ADを使ってAzure Web Appの認証をする

ログイン画面とかユーザー管理画面とかをそんなに求められてないシステムならお手軽なのでお勧めです。 基本的にここに書いてある内容にそっていきます。 azure.microsoft.com ASP.NET Webアプリケーションを作る 空のアプリを作ります。ここではokazukiadap…

IoT HubでEventProcessorHostを使ってメッセージを受信する

IEventProcessorを作って。 class EventProcessor : IEventProcessor { private Stopwatch stopwatch; public async Task CloseAsync(PartitionContext context, CloseReason reason) { if (reason == CloseReason.Shutdown) { await context.CheckpointAsyn…