2011-01-01から1年間の記事一覧
今日ちょこっとTweetしたんですが、 PrismのUpdateTextBindingOnPropertyChangedビヘイビアーをDataGridのCellEditingTemplateで使うとInvalidOperationExceptionが発生するようでしたのでPrismのCodePlexにIssueとして投稿しておきました。 ■Issue #8864: U…
昨日の記事、 ■フォーラムの質問にReactivePropertyサンプルで答える で、一部おかしな部分があったのを朝、id:neueccさんにご指摘いただきました。 aaa.IsChecked.ObserveProperty(x => x.Value).Where(x => x).Subscribe(x => Items2.Add(aaa)); の部分、 …
id:neueccさんが作ったReactivePropertyというライブラリが素敵すぎて悶え死にそうな今日この頃、 たまたまMSDNフォーラムでReactiveProperty使えそうな質問があったのでサンプル作ってみた。↓MSDNフォーラムの記事↓ ■CheckBox付きのListBoxでチェックの付い…
SilverlightのDataGridは主にItemsSourceにデータをバインドして使うと思うけど 今日はそのデータによって行の背景色を変えてみましょうという記事です。よくあるケースで考えられるのは 「データが変更されている場合はピンク色で」とか、 「ユーザーが(エ…
Pageの中にDataGridが1つあったとします。 こんなかんじで。 Page (DataContext=PageViewModel) DataGrid (ItemsSource=PageViewModel.DataGridItems) DataGridTemplateColumn DataGridTemplateColumn.CellTemplate ComboBox さて、ここで問題。CellTemplat…
久々のブログ(ブログというか月報になっとるけど)。WCF RIA Servicesを使おうかと考えているシステムがあって、じゃあどうせならEntity Frameworkも最新の4.1を使いたいなあと思ったんだけど、これがちょっと難儀した。 EF4.0だったら項目の追加からドメイ…
前回(MVVMパターンで陥りやすいメモリリークについて考えてみた)の続きっぽいこと書きます。前回ちょっとだけ触れたWeakEventパターンについてもう少し。 ※このパターン自体についての詳しい説明はないのでリンク先を見てください。WeakEventでググってき…
先日id:okazukiさんが ■PrismでViewよりViewModelのライフサイクルが長い時メモリリーク起きそう - かずきのBlog@Hatena の記事で、PrismのInteractionRequestが実装方法によってはメモリリークが発生する危険性をはらんでいることを見つけて下さった件をき…
以前にコードレシピにあげたサンプル ■Reactive Extensionsを使用してTwitterから非同期にデータを取得し表示する について、なんとMicrosoft MVPでRxの日本での開拓者(と僕が思っている)neueさんがブログで取りあげてくださって、よりよい書き方について…
id:okazukiさんがKinkumaFramework 1.2.1.12をリリースしてくださいました。 http://okazukimvvmsupport.codeplex.com/releases/view/68994NuGetでも「Kinkuma」と入力すればでてきます。最近僕が追加したExtendedInvokeCommandActionが追加されています。 (…
コードレシピに上げたやつを少し改良。 こんどはコードレシピじゃなくて、Codeplexにした。■Rxを使って非同期でデータを取得するサンプル http://asyncgetlistsample.codeplex.com/releases/view/68960使い方はユーザー名を入れてEnter押すだけ。Friendsだけ…
またまたObservable.Generateメソッドの続き。前回、コードレシピにサンプルを登録したんだけども(Reactive Extensionsを使用してTwitterから非同期にデータを取得し表示する)、見返してて、というか作ってるうちから自分的にイテてないな〜と思う部分があ…
前回の記事の続き。 いくらRxでも非同期でもConsoleに数字出して何が嬉しいんじゃーってことで Twitterがら非同期でデータを取得して表示するWPFアプリのサンプル作った。■Reactive Extensionsを使用してTwitterから非同期にデータを取得し表示する http://c…
Reactive Extensionsのお勉強の続き。 今日はObservable.Generate メソッドに注目した。というのも、 「あるメソッドの戻り値が一定の値になるまで、戻り値をそのメソッドの引数にして非同期で実行し続けるにはどうすればいいか?」 という問題にぶち当たっ…
サンプルアプリケーションを作るときに思うこと。 サンプル用のデータを手っ取り早く作りたい。手っ取り早く作るためにXamlで書きたい。最初はViewModel作った後にViewModelのコンストラクタとかで作ったり読み込ませたりしてたけど、 考えてみるとデザイン…
Kinkuma FrameworkのInvokeCommandActionの機能拡張をしてて困ったことが1つあった。 それは、「コントロールのイベントを使うような単体テストコードってどうやって書けば良いの!?」ってこと。System.Windows.Interactivity.InvokeCommandAction クラスは…
Kinkuma Frameworkの説明が少なすぎたので追記。Kinkuma Frameworkはid:okazukiさんが作ってらっしゃるFrameworkで、 PrismのMVVMサポート関連機能をベースにして、不足している機能を追加したライブラリです。僕が「良いなー」と思ったところは ・WPF/Silve…
id:okazukiさんが作ってらっしゃるKinkuma Framework (Prism based MVVM Framework) 。 ここのところ使わせてもらっていて、ちょっと機能追加して欲しいものがあったのでTwitterで問い合わせたらなんとコミッタ権をつけてくださった。 実はオープンソース開…
難しそうでずっと敬遠してたReactive Extensionsをやっとこさ勉強しよういう気になって、理解のとっかかりにFizzBuzzなぞ。 C#での最短はよこけんさんのブログにあるやつだろうけど、なんかRxでやってみたくなってサブスクライブっちゃった。反省はしていま…
Xmlドキュメントファイルからヘルプファイルを作成することができるSandcastle。 それをGUIで使えるようにしたのがSandcastle Help File Builder GUIなのだが、最新版(現時点でv1.9.3.0)での使い方がすぐ検索に引っかからなくてイライラしたのでここに書い…
5/28〜6/1まで東北でボランティアをしてきたのでそのまとめ。5/28 岩手県山田町 5/29 岩手県山田町 5/30 岩手県山田町(陸前高田が台風2号の影響で中止となったため) 5/31 岩手県陸前高田市 6/1 岩手県陸前高田市成果物一覧は下記の通り 勉強になったこと …
WPFが面白くってハマリ気味の最近、ちょいとした調べ物の途中で凄い(当社比)裏技を見つけた。 ■WPF MVVM Newbie - how should the ViewModel close the form? - Stack Overflow http://stackoverflow.com/questions/501886/wpf-mvvm-newbie-how-should-the…
WPF、フォーカスが当たった時にBackgroundが変わるTextBoxがXamlだけで作れるなんてずるい。 Triggerクラス をつかえばちょいちょいなんだけど、そんなのSilverlightにはなかった。 (EventTrigger クラスというのはあるけどLoadedしか使えないし、Triggerク…
Silverlightを半年ほどやった後、ほぼ経験0だったWPFに挑戦してみてる。Silverlightと同じXamlという素敵な言語を用いるWPF。Silverlightとの微妙な違いに戸惑いつつ、いいなあと思ったり、えーこれできないの?と思ったりの連続を楽しんでる。そのなかで、…
東北ボランティア応募した。「行こう」と思って1ヶ月たっちゃったけど、まあいろいろやることがあったししょうがないか。で、 5/28-29 山田町 5/30-6/1 陸前高田市 そのあと、できれば気仙沼とかに決定。 応募してみて気づいたんだけど、個人だとあんま受け…
少し長め&日本語コメントを挿入してみます。 using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { /// <summary> /// テスト用です。 /// </summary> class Program { /// <summary> /// ヴォイドメインです。 /// </summary>…
csだとこうなります。 using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { Console.WriteLine("ハローワールド"); } } }
すげー using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { Console.WriteLine("ハローワールド"); } } } ちなみにvbでやってみ…
はてなにしてみた。