タグ

.NETとmvvmに関するairj12のブックマーク (11)

  • Livet 1.0.4 Released ! - the sea of fertility

    念願のWPF4 MVVM Infrastructure Livet 1.0系をリリースしました。現行バージョン1.04。1.0.0はごくひそかにリリースし、1.0.3まではフィードバックを集めつつ特にここでの告知なしでやってきました。 このバージョンからはLivetは後方互換性を意識したバージョンアップをする事になります。以後Livet1.x系の間にパブリックインターフェースの削除はありません。パブリックAPIの追加はありますが、削除の代わりに既存のAPIにはObsolete属性を使用して非推奨とする事にします。 自信を持っておすすめできるリリースです。 主要機能はLivet紹介ページに記載してあります。なおNugetにも対応いたしました。(ただLivetの威力はプロジェクトテンプレートによるものが大きいため、極力VSGaralley/msiからのインストールをおすすめします)。ReSha

    airj12
    airj12 2012/07/29
    キタ――(゚∀゚)――!!
  • MVVMパターンでViewModelからViewを操作したい - the sea of fertility

    僕の結論。そんなの必要ない。 鍵を握るのはBlend付属アセンブリSystem.Windows.Interactivity.dllです。 ViewModelからViewを操作したい時のシナリオ パッと思いつくのは以下の3つでしょうか。 コマンドの実行前・実行後にアニメーションを実行する。アニメーションが終了してからコマンドを実行したい場合など。 ダイアログの表示。確認ダイアログ・ファイルを開くダイアログ等いろいろありますよね。 画面遷移。言わずもがな。 この3つ、Blend付属アセンブリSystem.Windows.Interactivityを使う事でビヘイビア(正確にはTriggerAction)の実装のみで可能です。コードビハインドも、Viewにインターフェースも、Messengerパターンも、ReverseCommandも必要ありません。 使用例 今回の例示で使用した全てのソース

    airj12
    airj12 2012/01/26
    サンプルが分り易い(今更だけど)
  • 「WPF/Silverlight/WindowsPhoneから WinRT まで見据えたリッチクライアント Model 設計」- RIA アーキテクチャ研究会 第2回セミナーで話してきました! - the sea of fertility

    RIA アーキテクチャ研究会 第2回セミナー話してきました。 RIA アーキテクチャ研究会 第2回セミナー http://atnd.org/events/21774 スライドはデモプロジェクトのソリューションと併せてご覧ください。 今回のテーマはModelオンリー。そして僕にしては珍しくでもデモプロジェクト中心です。スライドはデモプロジェクトと合わせてご覧ください。 個人的な事情で全ソースコード・全スライドは計26時間で作ったものなので、ソースにバグ残っていますし、汚いです。ただ今回限りのソースではなく今後リファクタを重ねて議論の土台にしていこうと思っているものなのでソースはbitbucketに公開しました。 デモプロジェクト デモプロジェクトリポジトリ https://bitbucket.org/ugaya40/twittersample スライド中で説明していますが、WPF4/Sil

    airj12
    airj12 2011/12/12
    UIを同期的にする限りではModel内で非同期処理を完結してしまうのが確かに楽そう / ありがたくソース見ます
  • 「MVVMパターンが必要な理由」啓蒙用資料公開 - the sea of fertility

    MVVMパターン的な実装は、他のプラットフォームでは選択肢の一つにすぎませんが、WPF/Silverlight(Windows Phone 7 含む)においては唯一の選択肢です。コードビハインドを書かないことはMVVMパターンそのものの定義とは関係ありません。まずはスキルにあったレベルでMVVMパターンを意識した実装を初めてみませんか? 以前の勉強会発表資料(わんくま勉強会での発表資料の半分以上をカットし、Androidテスト祭り分追加)を加工し、社内勉強会、そのほかの勉強会・ブログなどで自由に使える資料として公開します。私の個人名は抜いてあります。 無許可の改変・引用なども問題ありません。ただ、資料の直接の商用利用などはご遠慮ください。 ブログに張り付けたい場合、下のbマークから埋め込み用URLを取得できます。 「コードビハインドを書くのはMVVMパターンではない」などの誤解が、MVVM

  • MVVM:コードビハインドに記述しても良いと思う:Gushwell's Dev Notes

    Messengerを理解するために自作してみた(1)-(3) Messenger+Behaviorを理解するために自作してみた(1)-(3) でとりあえず、コードビハインドにコードを記述せずに、ViewModelからViewを操作する 方法については理解したつもりだけれど、 それでも、今の僕の経験と知識では、コードビハインドに次のようなコードを書いても、 良いんじゃないかなーと思ってます。 private void button1_Click(object sender, RoutedEventArgs e) { if (MessageBox.Show("実行しますか", "確認", MessageBoxButton.YesNo) == MessageBoxResult.Yes) { vieewModel.Execute(); } } こう主張すると、 「コードビハインドにView以外のロ

    airj12
    airj12 2011/06/01
    Blend無し&(Prismみたいな)Framework無しだとこういう結論になると思う
  • Livet - the sea of fertility

    Livet WPF4 MVVM インフラストラクチャ ProjectHome : http://ugaya40.net/livet SourceCode : https://bitbucket.org/ugaya40/livet/ Livetの概要と導入方法 LivetはWPF4のためのMVVM(Model/View/ViewModel)パターン用インフラストラクチャです。.NET Framework 4 Client Profile以上で動作し、zlib/libpngライセンスで提供しています。zlib/libpngライセンスでは、ライブラリとしての利用に留めるのであれば再配布時にも著作権表示などの義務はありません。しかし、ソースコードを改変しての再配布にはその旨の明示が義務付けられます。 Livetの目指すところ 現在、WPFでMVVMパターンによる実装を行うにはインフラストラクチャの

    airj12
    airj12 2011/05/20
    味見する
  • 東京マラソンの日に外に一歩も出ないオレ - wave1008の日記(主にSilverlight)

    先日MVVMをDISったが、説明不足気味でDISりっぱなしでは無責任かと、ちと反省している。 SilverlightでMVVMを使うのは問題があるので昔ながらのWindows Formsスタイルの開発に戻るべきだと受け取られたとしたら、それは誤解である。Silverlight(あるいはWPF)ではもはやWindows Formsスタイルの開発はできないし、そうすべきではないからだ。なので、今日はフォロー記事を書いてみる。 Silverlightの各コントロール群はMVVMの特徴であるデータバインドを前提に設計されている。なので、従来のWindows Formsスタイルの開発はできなくなっている部分が多々ある。 たとえばDataGridWindows FormsのDataGridViewならばセルの何行何列をインデックス指定すればセルのオブジェクトを取得でき、さらに背景色やフォント色などの

    airj12
    airj12 2011/05/13
    WPFに触れ始めたばかりだけど、今この心境
  • Livet – WPF4 MVVM インフラストラクチャ - the sea of fertility

    LivetはWPF4のためのMVVM(Model/View/ViewModel)パターン用インフラストラクチャです。.NET Framework 4 Client Profile以上で動作し、zlib/libpngライセンスで提供しています。zlib/libpngライセンスでは、ライブラリとしての利用に留めるのであれば再配布時にも著作権表示などの義務はありません。しかし、ソースコードを改変しての再配布にはその旨の明示が義務付けられます。 ダウンロードはこちらからになります。配布ファイルはVSI(Visual Studio Content Installer)形式を使用しています。Livetアセンブリ・デザイナ(Visual Studio 2010/Expression Blend 4)サポートアセンブリを内包するプロジェクトテンプレートと、コマンド・プロパティ用のコードスニペットがインスト

    airj12
    airj12 2011/05/13
    仕事で使っちまおうか…
  • MVVM:Messengerを理解するために自作してみた(1):Gushwell's Dev Notes

    MVVMを勉強していたら、Messengerというものが出てきました。 これって何だろうか。 .NET Frameworkのクラスじゃなくて、MVVM Light Toolなどのフレームワークで 用意されているもので、ViewModelからViewを操作する時に利用するもののようです。 要は、ViewModelとViewの仲を取り持つ仲介者クラスです。 と、ここまでは分かりましたが、それ以上のこと(特にどういう仕組みなのか)が良くわかりません。 そこで、理解を深めるために、MVVM Light Toolの外部インターフェイスを参考に Messengerクラスをちょっと自作してみました。 とはいっても、ものすごい手抜きなので、これを実際に使うわけにはいかないと思うし、 MVVM Light Toolのソースコードは一切みていないので、僕の理解が間違っている可能性は ありますが、まあ、Mess

  • WPF のための MODEL-VIEW-VIEWMODEL (MVVM) デザイン パターン

    このブラウザーはサポートされなくなりました。 Microsoft Edge にアップグレードすると、最新の機能、セキュリティ更新プログラム、およびテクニカル サポートを利用できます。 コードは MSDN コード ギャラリーからダウンロードできます。 オンラインでのコードの参照 目次 秩序と混乱 Model-View-ViewModel の進化 WPF 開発者に MVVM が好まれる理由 デモ アプリケーション 中継コマンド ロジック ViewModel クラス階層 ViewModelBase クラス CommandViewModel クラス MainWindowViewModel クラス ViewModel に View を適用する データ モデルとリポジトリ 新しい顧客のデータ入力フォーム All Customers ビュー まとめ 専門的なソフトウェア アプリケーションのユーザー イン

    WPF のための MODEL-VIEW-VIEWMODEL (MVVM) デザイン パターン
    airj12
    airj12 2011/04/18
    本家
  • WPFアプリケーションに最適なアーキテクチャ「M-V-VM」とは | グレープシティ株式会社

    帳票・レポート 日仕様の帳票開発に必要な機能を搭載したコンポーネント ActiveReports for .NET ActiveReportsJS 表計算・グリッド Excel風のビューと表計算機能を実現するUIコンポーネント SPREAD for Windows Forms SPREAD for ASP.NET SPREAD for WPF SpreadJS 入力支援 快適な入力を実現する日仕様入力コンポーネントセット InputManPlus for Windows Forms InputManPlus for ASP.NET InputManPlus for WPF InputManJS 多段明細 1レコード複数行&日付表示に 最適なグリッドコンポーネント MultiRowPlus for Windows Forms 戻る コンポーネントセット Visual Studioで利用す

    WPFアプリケーションに最適なアーキテクチャ「M-V-VM」とは | グレープシティ株式会社
    airj12
    airj12 2011/04/18
    セッション資料PDFが異常に分かり易い
  • 1