かずきのBlog@hatena

日本マイクロソフトに勤めています。このブログは個人ブログなので、ここに書いている内容は個人的な意見で会社の公式見解ではない点にご注意ください。好きなものは XAML と C# 。苦手なものは型の無い言語です。

ReactiveProperty

Reactive Extensions とか知らない人向けの ReactiveProperty のはじめかた その 2

blog.okazuki.jp はじめに 最初の記事を受けて使い始めてきた人向けのちょっと Rx っぽい使い方を紹介します。 ReactiveProperty 値を加工して代入しているケース ReactiveProperty に値を代入するケースがあると思います。例えば以下のような感じですね。 p…

ReactiveProperty v5.1.1 をリリースしました

v5.1.0 は nuspec の定義間違えたので取り下げました。 機能としては、初期状態でバリデーションロジックが必ず実行されて INotifyDataErrorInfo インターフェースに対応している人たちから見るとエラーがある!っていう状態になっていたので、最初はバリデ…

ReactiveProperty v5.0.0 をリリースしました

一週間くらい前に公開された System.Reactive 4.0.0 に対応しました。 System.Reactive 4.0.0 が .NET Standard 2.0 になったので、それに合わせて ReactveProperty も .NET Standard 1.3 から 2.0 になりました。なので、.NET Framework だと 4.6.1 以降、U…

ReactiveProperty v4.2.2 をリリースしました

シリアライズの関係で ReactivePropertySlim クラスの Mode プロパティを public にしました。 更新は、いつも通り NuGet からどうぞ。 www.nuget.org

Reactive Extensions とか知らない人向け ReactiveProperty のはじめの使い方

ReactiveProperty は MVVM + Rx でプログラム組むときにいい感じにしてくれるものですが MVVM だけでも大変なのに Rx なんて魔法みたいなものを覚えないといけないなんて…!!ということで学習コストが高いので導入をためらうことがあると思います。 当然、…

ReactiveProperty v4.2.1 をリリースしました

Xamarin.Android 関連で提供してた機能を ReactivePropertySlim/ReadOnlyReactiveSlim に対応するための Pull Request をもらってマージしてたのでリリースしました。 github.com NuGet からインストールして使ってください。 www.nuget.org

ReactiveProperty v4.2.0 をリリースしました

github.com ReactiveProperty と ReadOnlyReactiveProperty に IEqualityComparer で値の比較条件を指定できるようにしました。 @soi013 さんプルリクありがとうございます。 導入はいつも通り nuget から! www.nuget.org

ReactiveProperty v4.1.0 をリリースしました

昨夜 id:neuecc さんがプルリクくれたので取り込みました。 github.com www.nuget.org 追加機能 便利ではあるのですが、たまに不便な ReactiveProperty / ReadOnlyReactiveProperty が勝手に UI Thread にイベントをディスパッチする機能があります。これは…

ReactiveProperty v4.0.0 をリリースしました

Reactive Extensions の v4.0.0 が出るまで待とうと思ってたのですが、一向に出る気配がないので Reactive Extensions のバージョンは v3.1.1 のままですが ReactiveProperty v4.0.0 をリリースしました。 Reactive Extensions の v4.0.0 がリリースされたら…

ReactiveProperty v4系をXamarin.Formsで使う方法

Reactive Extensions 3系は正直Xamarinで使うのは辛かった。なんかパッケージ追加しただけで動かなくなるし。 Reactive Extensions 4系は、そんなことがない!素敵!! ということでReactive Extensions 4系に依存しているReactiveProperty 4系もXamarin.For…

ReactiveProperty v4.0.0 プレリリース版をリリースしました

表題の通りReactiveProperty v4.0.0のプレリリース版を公開しました。NuGetのページは以下になります。 www.nuget.org 主な変更点は以下の通りです。 更新 System.Reactive v4.0.0-preview00001 に更新 変更 ReactiveProperty の internal なコンストラクタ…

ReactiveProperty 3.6.0をリリースしました

昨日の夜にやろうと思ったんですが今日になってしまいました。 www.nuget.org 今回は、iOS向けのSetBindingメソッドが正しく動いてなかった奴の修正と、ReactiveCommandとAsyncReactiveCommandクラスのSubscribeメソッドに引数無し版を追加しました。どちら…

ReactiveProperty v3.5.0をリリースしました

IFilteredReadOnlyObservableCollectionのフィルタ条件をリフレッシュするRefreshメソッドを追加しました。 これで、フィルター条件を途中で変えることができます。 WPFでは無事動いてるのですがUWPとXamarinがちゃんと動くか未知です。というのもRefreshし…

ReactivePropertyでXAMLで.Valueのつけ忘れを教えてくれるReSharperプラグイン

@okazuki ReactiveProperty にはいつも大変お世話になっています。生活必需品です。自分はよく XAML 側の .Value をド忘れするのですが、これをハイライトしてくれる R# プラグインを書いてみました。https://t.co/xd6Nv19rgu— sh4 (@sh4) 2017年2月3日 ガチ…

ReactiveProperty 3.4.0をXamarinで使う場合

Reactive Extensions 3.1.xがPCLにうまく入らないので、.NET Standardにプロジェクトを変換してから入れてください。 何かRx安定しないな…。

Xamarin.Formsでボタンの2度押しをReactivePropertyを使って抑止してみよう

お題の通りです。 こんな感じでReactiveCommandを普通に使うと連打すると2重で画面遷移したりします。 using Prism.Mvvm; using Prism.Navigation; using Reactive.Bindings; using System; namespace PrismUnityApp12.ViewModels { public class MainPageVi…

ReactiveProperty 3.4.0をリリースしました

www.nuget.org Reactive Extensionsを3.1.0から3.1.1に更新しています。 DependencyObject(UWP & WPF)に以下の拡張メソッドを追加しました ObserveDependencyProperty: DependencyPropertyの変更を監視するIObservable<Unit>を返します。 ToReadOnlyReactiveProper</unit>…

ReactiveProperty v3.3.1をリリースしました

ReactiveProperty v3.3.1をリリースしました。 www.nuget.org 新機能はありませんが、依存しているライブラリを最新版にあげました。 System.Reactive: v3.0.0 → v3.1.0 UWPのビヘイビア: 1.?.? → 2.0.0 今後ともよろしくお願いします。

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

Reactive Extensions 3.0.0に対応したReactiveProperty v3.0.0をリリースしました。 新機能はありません! インストールはNuGetからお願いします。 www.nuget.org Windows 8.1とWindows Phone 8.1をサポート対象から外しました。(Windows 8.1では動くんだけ…

Visual Studio上のXamarin.FormsでReactiveProperty v3.0を使う方法

Rx 3.0対応しているRP 3.0ですが、まだpreリリースです。何故なら、Xamarin.Androidで参照追加するとコンパイルエラーになるから…! ということで、とりあえず使い方を試行錯誤しながら書いていこうと思います。 まず、プロジェクトを作ります。作ったら以下…

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

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

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

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

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で参照追加するだけでコンパイルエラーにな…

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

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

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

www.nuget.org @neueccさんが、またプルリクをくれました。UniRxからポーティングされたクラスが1つ追加されました。 MessageBrokerというRxっぽく使えるMessenger的なクラスになります。 基本的に以下のような使い方になります。 // 購読 MessageBroker.Def…

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

www.nuget.org このようなリクエストを受け取ったのでプルリクを投げて頂いて取り込みました。 github.com pdbを含むようにしただけでReactiveProperty本体には特に更新は入っていません。

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

ソファーで爆睡してて目覚めたらこんなメッセージが ReactivePropertyにどうぞ(とは) https://t.co/49sVKAdyns @okazuki @xin9le— neuecc (@neuecc) 2016年6月6日 WPF限定なのをどうにかしたいと思いつつも、まぁ現実問題プラットフォーム固有処理ですよね……

ReactivePropertyのコードスニペット

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

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

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