タグ

ブックマーク / blogs.wankuma.com (6)

  • [WPF][C#]Model View ViewModelパターンでハローワールド

    MSDNマガジン 2009年2月号にある「Model-View-ViewModel デザイン パターンによる WPF アプリケーション」にあるModel-View-ViewModelパターンが素敵です。 ざっくり説明すると… Model 通常のクラス。 レガシーなC#やVBで作ったクラスたちです。 View XAMLです。大体UserControlです。 ViewModel INotifyPropertyChangedインターフェースや、IDataErrorInfoインターフェースを実装したViewに特化したクラスです。 ViewModelのデータをViewへ表示する仕組み ViewのDataContextにViewModelを入れてBindingして表示します。 IDataErrorInfoや、ValidationRuleを使って入力値の検証を行います。 Viewでのボタンクリック等の操

  • [WPF][C#]ついに妥当性検証します

    というわけで、Validationについて勉強することにします。 個人的には、興味をそそられない部分であるバリデーション(だって実際にバリデーションしかけるのって田植え作業みたいでめんどくさいし)。 WPFではどうなってるのかというと…BindingオブジェクトにValidationRulesというプロパティがあるので、そこで指定するみたいです。 Validationについて勉強しだすまえに、足場となるプロジェクトを1つでっちあげます。 今回は、真ん中にテキストボックスが置いてあって、画面の下にあるボタンを押すとテキストボックスに入力された内容が出力されるだけのシンプルな画面。 ここに入力された値についてValidationしてみたいと思います。 あと、めんどくさいのでWindow1のDataContextにはthisを突っ込んでいます。 こうすると、自分のフィールドへのバインドが楽チン。

  • [WPF][C#]ついに妥当性検証します! その2

    C#やJavaRubyとメモ書き 目次 ホーム 連絡をする RSS Login Blog 利用状況 投稿数 - 692 記事 - 0 コメント - 164823 トラックバック - 212 ニュース わんくまBlogが不安定になったため、前に書いてたはてなダイアリーにメインを移動します。 かずきのBlog@Hatena 技術的なネタは、こちらにも、はてなへのリンクという形で掲載しますが、雑多ネタははてなダイアリーだけに掲載することが多いと思います。

  • [WPF][C#]格好いいモーダルっぽいものを出してみよう

    <Window x:Class="WpfDummyDialog.Window1" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:WpfDummyDialog="clr-namespace:WpfDummyDialog" Title="Window1" Width="400" Height="300"> <Grid> <Button Content="ちょっとやってく?" HorizontalAlignment="Left" VerticalAlignment="Top" Click="Button_Click"/> <WpfDummyDialog:ConfirmDialog x:Nam

  • [WPF] WPF入門 ~レイアウト [DockPanel]~

    今回はレイアウトコントロールの1つ、System.Windows.Controls.DockPanelコントロールについてです。 では早速MSDNでの説明を見てみましょう。 子要素を互いに水平方向または垂直方向に整列する領域を定義します。DockPanel の子要素の画面上での位置は、それぞれの子要素の Dock プロパティおよび DockPanel の下の子要素の相対順序によって決まります。したがって、DockPanel の下の子要素の順序によって、同じ Dock プロパティ値を持つ一連の子要素が画面上の異なる位置に配置される可能性があります。DockPanel は子要素を順に反復処理し、残りの領域によって各要素の位置を設定するため、子の順序は配置に影響を及ぼします。 上記説明である通りに、DockPanelコントロールは水平方向・垂直方向に整列しレイアウトを行います。 DockPane

  • rubyでは便利なcsvのライブラリがあるのだけど

    こんなCSVファイルがあったとして sample.csv "abc","d,e" 次のようなコードでCSVファイルを扱う事ができます。 require 'csv' CSV.open("sample.csv","r") { |row| puts row[0] #=>abc puts row[1] #=>d,e } 便利だなぁと思いつつも、次のような形式だとパースに失敗するみたい。 sample.csv #a,b "a","b" #"a","b" 1行目、2行目は問題なく読み込めるのだけど、 3行目で「CSV::IllegalFormatError」で失敗してしまう。 先頭に「#」があれば、コメント行とみなすとかを設定できたら嬉しかったのだけどなぁ。。 fastercsv,lightcsvも試してみたけど、やっぱりだめ。 コメント行を読み飛ばしてほしいのだけど、そういうのはやっぱり手作りにしな

  • 1