タグ

2011年1月6日のブックマーク (9件)

  • Visual Studio 2010のデザイナに仕事をさせて楽をする方法 - かずきのBlog@hatena

    Expression Blend 4のRCを入れて試してみたら見慣れない属性がタグについてた。 よく見てみると、デザイナを支援するためのものっぽい。Visual Studioでも無事動きました。 何をするためのものかというと、デザイナ向けの設定をUserControlタグとかにすることで、デザイナがDataContextの型を識別してBindingとかをプロパティエディタで指定する際に、プロパティ名とかを表示してくれるというものです。 やり方は簡単です。まずは、お試し用のViewModelをでっちあげます。特にViewModelからViewへの通知は必要ないので、INotifyPropertyChangedの実装とかはしてないシンプルなクラスです。 namespace SilverlightApplication23 { public class MainPageViewModel { p

    Visual Studio 2010のデザイナに仕事をさせて楽をする方法 - かずきのBlog@hatena
    einherjar
    einherjar 2011/01/06
    実行時デザイン shilverlight
  • Walkthrough: Using Sample Data in the Silverlight Designer

    This walkthrough shows you how to use sample data in the Silverlight Designer for Visual Studio 2010 to create data bindings at design time. With sample data displayed at design time, you can ensure that your layout behaves correctly at run time. To make the sample data accessible to controls in the designer, you apply the DesignData build action to the sample data file and reference the file in t

    Walkthrough: Using Sample Data in the Silverlight Designer
    einherjar
    einherjar 2011/01/06
    WPF 実行時デザイン
  • IDataErrorInfoの汎用的な実装 - かずきのBlog@hatena

    INotifyDataErrorInfoの実装は、前の記事でやりました。 http://d.hatena.ne.jp/okazuki/20100418/1271594953 ただ、INotifyDataErrorInfoはSilverlight4にしかないので、WPF4だとIDataErrorInfoとかプロパティでの例外で入力値の検証をしないといけません。 とりあえずIDataErrorInfoを汎用的?に実装するとしたらというのをでっちあげてみました。Errorプロパティがちょっと悩みどころですが・・・ using System; using System.Collections.Generic; using System.ComponentModel; using System.ComponentModel.DataAnnotations; using System.Linq; na

    IDataErrorInfoの汎用的な実装 - かずきのBlog@hatena
  • Silverlight 4のデータ検証 「汎用的なINotifyDataErrorInfoの実装」 - かずきのBlog@hatena

    前に汎用性の欠片も無い感じに実装して実験したINotifyDataErrorInfoですが、System.ComponentModel.DataAnnotationsと連携させる感じで汎用的に実装できます。 とりあえず、INotifyDataErrorInfoとINotifyPropertyChangedを実装したViewModelBaseクラスは、こんな雰囲気になると思います。 using System; using System.Net; using System.Windows; using System.Windows.Controls; using System.Windows.Documents; using System.Windows.Ink; using System.Windows.Input; using System.Windows.Media; using Sys

    Silverlight 4のデータ検証 「汎用的なINotifyDataErrorInfoの実装」 - かずきのBlog@hatena
  • コードスニペットを使った INotifyPropertyChanged の実装(再度更新)

    ソースコード、dll、snippet ファイル詰め合わせ 前回からの更新: プロパティ名、internal static readonly の方がよかった 補助関数とか、dll 化 ついでに MVVM でよく使う DelegateCommand とか、依存プロパティ用のコードスニペットも追加 正直、結構な割合車輪の再発明 以下、サンプル: class Sample : DependencyObject, INotifyPropertyChanged { public int X { get { return (int)GetValue(XProperty); } set { SetValue(XProperty, value); } } public static readonly DependencyProperty XProperty = DependencyPropertyHelpe

    コードスニペットを使った INotifyPropertyChanged の実装(再度更新)
    einherjar
    einherjar 2011/01/06
    mvvm
  • 第6回 「コマンド」と「MVVMパターン」を理解する

    ■MVVMパターン これまでの説明でも用語として少し出てきたが、WPFによるGUIアプリケーション開発では(特に、アプリケーション規模が大きい場合)、Figure 4に示すような、ビューとモデルの間に「ビューモデル」と呼ばれるものを挟んだ3階層アーキテクチャで作成する場合が多い。このようなアーキテクチャ・パターンを、「MVVM(Model-View-ViewModel)パターン」と呼ぶ。 Figure 4: ビュー、ビューモデル、モデルの3階層構造 ビューモデルからビューへの表示変更の通知は、INotifyPropertyChangedインターフェイスの実装を通じて行われる。逆に、ビューからビューモデルへのコマンド(状態変更)の通知は、ICommandインターフェイスの実装を通じて行われる。 MVVMパターンは、有名なMVC(Model-View-Controller)パターンと同種のアー

    第6回 「コマンド」と「MVVMパターン」を理解する
  • 第6回 「コマンド」と「MVVMパターン」を理解する

    ビューとモデルを疎結合するコマンドを解説。さらに、データ・バインディングとコマンドの仕組みを使ったWPFアプリのアーキテクチャ・パターンMVVMを紹介。 連載目次 前回に引き続き、ビューとモデルの疎結合を実現するための仕組みの1つである、「コマンド」という機能について説明する。また、データ・バインディングとコマンドの仕組みを使ったWPFアプリケーションのアーキテクチャ・パターンである「MVVM(Model-View-ViewModel)パターン」についても紹介する。 ■GUIアプリケーションに対する要件 前回も行ったように、WPFのコマンドの仕組みを説明する前に、コマンドに関連するGUIアプリケーションに対する要件を整理してみよう。 ●意味論的なイベント処理(コマンド) 一般的なGUIアプリケーションでは、マウスのクリックやキーボードからの入力など、実操作レベルのイベントをそのまま処理する

    第6回 「コマンド」と「MVVMパターン」を理解する
    einherjar
    einherjar 2011/01/06
    コマンド command
  • Google Data API - Google Code

    利用方法 Google Data API を初めて利用する場合は、次の手順をお勧めします。 概要を参照し、基礎を理解します。 プログラミング言語に固有のクライアント ライブラリのいずれかを使用するか、XML と HTTP をそのまま使用するかを決定します。 接続する Google サービスを選び、該当するデベロッパー ガイドに目を通します。 必要に応じて、該当するリファレンス ガイドを参照します。 例を参考にします。 Google Data API について Google Data API では、ウェブ上のデータを読み書きするシンプルな標準プロトコルを提供します。 これらの API は、XML ベースの 2 つの標準シンジケーション フォーマット、Atom と RSS のいずれかを使用します。Atom パブリッシング プロトコルに、クエリを処理するいくつかの拡張機能を加えたもの (Atom

  • Googleカレンダーを勤怠管理システム(タイムカード)として使える「GTimeReport」

    大企業ならともかく、中小、零細企業であれば、勤怠管理をシステム化しようとすると、それなりのコストがかかりますよね。 そのため、エクセルなどで管理しているケースもあるでしょう。しかし、入力している側からしたら、エクセルで勤怠をつけるなんて結構面倒なものです。 今回は、そんな勤怠管理を、予定を入力しやすいインターフェースを持つGoogleカレンダーで管理しやすくするサービスをご紹介します。 組織のマインドマップツールをマインドマイスターにすべき理由 伸びてる産業、会社、事業を紹介しまくるStrainerのニュースレターに登録!! Googleカレンダーで効率よく勤怠管理するのに便利な「gtimereport」 「GTimeReport」は、Googleカレンダーのスケジュールを、エクセルやGoogleスプレッドシートへエクスポートできるサービス。 複数のカレンダーをマージしてエクスポートするこ

    Googleカレンダーを勤怠管理システム(タイムカード)として使える「GTimeReport」