nuits.jp blog

C#, Xamarin, WPFを中心に書いています。Microsoft MVP for Development Technologies。

Prism

Prism for WPF で非表示となったViewのインスタンスを破棄する設定

Prism for WPFではRegionという機能を利用することで、画面遷移実装する事ができます。具体的にはこちらをご覧ください。 さて、Regionを利用して画面遷移した場合、デフォルトの振る舞いではViewやViewModelのインスタンスは、一度生成されると以後はキャッ…

Prism 6.3の変更点 その2 画面遷移関連(for Xamarin.Forms)

Prism 6.3のXamarin.Forms向けで最も大きな変更があったのが画面遷移関連です。 機能追加もありますし、注意が必要な破壊的変更もあります。

Prism 6.3の変更点 その3 新規要素(for Xamarin.Forms)

本エントリーではPrism6.3で新たに追加された機能をいくつか紹介します。 EventToCommandBehavior IApplicationLifeCycleの追加 IApplicationStore IDeviceService

Prism 6.3の変更点 目次(for Xamarin.Forms)

Prism6.3のアップデートにおける変更点をまとめました。 以下をご覧ください。 www.nuits.jp www.nuits.jp www.nuits.jp 今回はこれだけ!

Prism 6.3の変更点 その1 Pris.Core

Prism 6.3がリリースされてからすでに2カ月。書こう書こうと思っていたのですが、後回しにしまくっていたのでここに変更点をまとめます。 for Xamarin.Formsの範囲が対象となります。 と、言っておきながら、本エントリーではWPFおよびUWPとも共通のPrism.Co…

【メモ】PrismでMasterDetailPageと付き合うコツ

そのうち、きっちりまとめ直しますがひとまずメモを。 MasterDetailPageを利用する際に、Prismの画面遷移イベントとライフサイクルイベントをうまく活用するコツをメモっておきます。

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

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

技術書典2 & 超技術書典でXamarin本出します

すでにご存じの方もいらっしゃると思いますが、つぎの技術同人誌イベントにてXamarin本を出典します! techbookfest.org techbookfest.org (Xamarin.Mac)初心者向けの記事からディープな記事まで、一部メンバーが入れ込み過ぎて、えのさんも呆れるほど書き…

【Xamarin】Blue Monkeyプロジェクト Architecture Overview コメント入り掲載

【追記】 本エントリーは大幅に見直す予定です。現在検討中の内容は以下に公開しています。 Blue Monkey Architecture Overviewに対する訂正 - nuits.jp blog 【追記終了】 先日Infragisticsさんのイベント「Infragistics Day 2017 Spring」にて、現在進行形…

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

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

【解決済】引数渡しなし&マルチスレッドで、呼び出し元とオブジェクトを共有するいい方法

2017.02.19 追記: 本件は、以下のアドバイスで解決することができます。 @nuits_jp ThreadLocal でダメなら AsyncLocal でどうじゃ? と思った— あえとす 2017-beta.2 (@aetos382) 2017年2月18日 AsyncLocalなんて追加されていたんですね。全く知りませんで…

Prismで、いつの間にかAutowireViewModelが不要になってた話

色々いじってて、おかしいおかしいと思ったらPrism for Xamarin.Forms 6.2.0のリリースノートの記述にこんな内容が ViewModelLocator.AuowireViewModel is now done automatically. This is now an opt-out feature https://github.com/PrismLibrary/Prism/w…

Prism for Xamarin.Forms 6.3.0アップデートの注意事項

ちょっとTLで話題になっていたのでせっかくだから文章でまとめようかと思いエントリーにしてみました。 6.3.0の正式版リリース時にも注意が必要な事項 6.3.0-pre独自の注意事項(リリースまでにはおそらく改修されるだろう内容) についてまとめてみましたの…

PrismにPull Request送ってみた

先日、以下のようなエントリーを書きました。 www.nuits.jp で、Twitterでその関連で話をしていたら、Braian氏からレスが付きました。 @nuits_jp @aetos382 looks like I need to create templates for other containers :)— Brian Lagunas (@brianlagunas) …

ゲームじゃないUnityの開発が停止している疑惑について

ゲームじゃない方のUnity、DIコンテナで多分もっとも著名な実装の一つであるUnityの開発がどうやら停止しているくさい?という事を知ってちょっと衝撃を受けています。

Prism for Xamarin.Forms Navigationイベント詳細 NavigationPage編

どうも、いまだかつてXamarinでアプリを一本も完成させたことのない初心者です。 本エントリーは[学生さん・初心者さん大歓迎!]Xamarin Advent Calendar 2016の12日目のエントリーとして投稿しました。 前日はbetatさんのグッとくる Xamarin Studio のショ…

Prism for Xamarin.Formsの画面遷移 10のベストプラクティス

本エントリーは Xamarin Advent Calendar 2016 (その1)5日目のエントリーです。 さてこれまで何度かPrismを利用する場合の画面遷移について記述してきました。 Prism for Xamarin.Forms入門 ViewModel Firstで画面遷移する - nuits.jp blog 【Prism for Xa…

【Prism for Xamarin.Forms】Type Safe Navigation潔癖症パターン

ちょっと前に、Prism for Xamarin.FormsにおけるViewModel Firstによる画面遷移をご紹介しました。 www.nuits.jp ただこの例には二つの気になる点(悪い点というわけでもない)がありました。 ViewModelが別のViewModelにクラスの参照のみであるが発生してい…

【完全無料】Xamarin公式サンプルをAzure連携して遊ぼう はじめに&目次

ちょっと前にちょまどさんが公式から提供された新しいサンプルアプリを紹介されていました。 Xamarin の雛形アプリを Xamarin 本家が配布を始めたみたい!ーKickstart Your Project with Our New Bootstrapped Mobile Apps https://t.co/iP2ESHkXkTー pic.tw…

Prism for Xamarin.Forms入門 ViewModel Firstで画面遷移する

「JXUGC #18 フォローアップハンズオン Prism & Moqをさわってみよう!」で、PrismでのViewModel Firstの実装方法を紹介するといったな? あれは嘘だ。 って事もないんですけど、調べてみたらコレジャナイ感がありました。 (でもよく考えて一周回って、これ…

Prism and Moqハンズオンのドキュメントを大幅に加筆修正しました

先日、dotsさんにてPrism for Xamarin.FormsとMoqのハンズオンを実施しました。 eventdots.jp 正直、詰め込み過ぎたのと、まさかのVisual Studioの標準機能だけではユニットテストが動かない問題などがあり、ぶっちゃけ凹みました。 そもそも、カンファレン…

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

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

Prism and Moq 体験ハンズオンの資料をオープンソースにしたよ~

先日の「JXUGC #18 Xamarin.Forms & Prism & Azure Mobile Apps を使いこなそう」にてPrismとMoqのお話をしてきました。 eventdots.jp 非常にうれしいことにハンズオン開催してほしいというご要望を何名かの方から頂き、実際にハンズオンを開催することと…

Prismにプルリクを送ろうとした話をしてみたい

皆さんも、きっと憧れのプロジェクトのContributersに名前を載せたい! と思ったことが一度や二度はあるのではないでしょうか? 私はあります。 そして実際に採用される価値がありそうなアイディアもありました。 今回はそう思って取った行動とその結果を、…

JXUGC #18 Why Prism for Xamarin.Forms フォローエントリー

先日、JXUGのカンファレンスにて表題の発表をさせていただきました。 eventdots.jp いや〜、疲れましたけど終わったら楽しかったです。 初めてのライブコーディングで、本当に開始前は手が震えていましたけど終わったらいい思い出です。 開始直前に田渕さん…

Prism for Xamarin.Forms入門 DependencyServiceとPlatformInitializerどちらを使うべきか?Brianに聞いてみた

以前、以下のエントリーでPrismではDependencyServiceをインジェクションする仕組みがある旨、説明しました。 www.nuits.jp しかし、実のところプラットフォームごとにインジェクションするクラスを切り替える方法は、PlatformInitializerを利用する方法もあ…

Prism for Xamarin.Forms入門 CaseStudy:デバイス形状やプラットフォームでViewを切り替える

Xamarin.Formsでは通常、Viewまで1コードで書けるのが利点ですがケースによっては個別に調整したいケースもあるかと思います。 通常、そういった場合は CustumRendererやEffectsの出番です。 しかしケースによってはページデザインをまるっと置き換えたいと…

翻訳:Contributing to Prism

ちょっとPrism for Xamarin.FormsでPull Request送りたい案件があったので、PrismにContributeするためのルールを翻訳してみました。 なお本エントリーは、解説ではなく私がやりたいので、私の解釈が間違っていないかマサカリを投げてもらうためのエントリー…

Prism for Xamarin.Forms入門 IConfirmNavigationAsync

以前、NavigationServiceの解説回にてIConfirmNavigationの説明をしました。 Prism for Xamarin.Forms入門 NavigationService Deep Dive - nuits.jp blog IConfirmNavigationは端的に言うと、画面遷移時に条件によって遷移を抑止することができる機能です。 …

Prism for Xamarin.Forms入門 画面遷移をViewModelに通知するBehaviorを作ってみた

さて一つ前の記事で、PrismのINavigationAwareを代替するのに、PageクラスのAppearingイベントとDisappearingイベントが利用できる。 というお話をしました。 www.nuits.jp 今回はそれを簡便に実現するための方法を紹介したいと思います。 以前、イベントに…