かずきのBlog@hatena

すきな言語は C# + XAML の組み合わせ。Azure Functions も好き。最近は Go 言語勉強中。日本マイクロソフトで働いていますが、ここに書いていることは個人的なメモなので会社の公式見解ではありません。

2011-02-01から1ヶ月間の記事一覧

MVVMでメモリリークしちゃってました 原因と対策編

2011/03/02 コメントの指摘を受けて修正。 間違ってた部分。 WeakPropertyChangedViewModelBaseクラスの以下の処理。 PropertyChangedEventManager.AddListener( this.Model, new PropertyChangedWeakEventListener( base.RaisePropertyChanged), string.Emp…

MVVMでDataGridで選択されている行を新しいウィンドウに表示させる

MSDN フォーラムでMVVMの画面遷移についてという質問が上がってたので、Prismを使ってやってみました。 この例で使ってるInteractionRequestの使い方は、以下の記事を参照してください。 MVVMパターンでVMからVを操作する Prism編 ViewModelの作成 今回は、V…

PrismのMVVM関連のクラスを使ってHello world

Prismの最新バージョンからMVVMでの開発をサポートしてくれるようになりました。という話を聞いてPrismをダウンロードしてきてレッツトライ!としようと思うと、Bootstrapperがどうの、EventAggregaterがどうの、Regionがどうの、MEFがどうのUnityがどうのet…

Windows FormsからWPFへ乗り換えるときの最初の障壁

Twitterでも呟いたのですが、とりあえずブログのエントリとしてまとめておきます。因みに、ここでの障壁はプログラマさんが感じるであろう最初の障壁を自分の場合を思い出して書いています。 何がなんだかわからない まず、最初に躓くのが慣れ親しんだWindow…

MessengerのかわりにReactive ExtensionsのSubjectあたりを代用してみる

@ugaya40 ブログのやつ、エラー履歴のViewへの通知みたいな一方通行なものは、URL みたいにRx使って解決する方がよくないかな?2011-02-23 19:20:17 via みについ to @ugaya40 という呟きを見て、あぁ確かに出来そうだと思ったので岩永さんのコードは見てな…

Managed Extensibility Framework入門 その7「クラス以外のExportとImport」

さて、前回までで一番基本的なクラスのExportとImportについて説明しました。そして、それとDirectoryCatalogを組み合わせて、拡張可能なアプリケーションを実際に作ってみるところまでやりました。(拡張可能アプリケーションといってもしょぼいですが・・…

自分用メモだけど突っ込みいただけると有り難いです(.NETの勉強会説明内容)

2011/2/23 14:39 更新ちょっとある場所で.NET全体について軽く勉強会開くことになったのでどんなことを話すのか考え中のメモです。 因みに、パブリックな勉強会ではないです。時間は1時間程度を考えてたりします。 Microsoft.NET そもそも、どういう思想で作…

SilverlightでMVVMするときにたまに障害になること

Bindingがしょぼいっす。Silverlight 4になってかなり良くなって困る事が大分少なくなってきましたが、たま〜にひっかかっちゃいます。具体的に言うとRelativeSourceが弱いです。Silverlightで使えるのは以下の2つだけ。 TemplatedParent Self RelativeSour…

ASP.NET MVCは、ユーザーインターフェイスデザイナにはふさわしくない?

ASP.NET MVCは、ユーザーインターフェイスデザイナにはふさわしくない? InfoQの記事ですが、まぁ確かにデザイナが無いのは、痛いと言えば痛いですね・・・。CSS3やHTML5などのようにリッチな画面になればなるほど実行前に大体でもいいから画面が見渡せない…

Managed Extensibility Framework入門 その4「もっとExport」

さて、前回ではExportについてちょっと深く見てきました。前回の最後で次はImportかなと言っておいて申し訳ないのですが、もうちょっとExportにお付き合い頂きたいと思います。 Export時の型を指定 今までExportを付けた型は、AクラスにExportをつけたらAク…

Managed Extensibility Framework入門 その4「もっとExport」

さて、前回ではExportについてちょっと深く見てきました。前回の最後で次はImportかなと言っておいて申し訳ないのですが、もうちょっとExportにお付き合い頂きたいと思います。 Export時の型を指定 今までExportを付けた型は、AクラスにExportをつけたらAク…

Managed Extensibility Framework入門 その5「Import」

さて、Exportもひと段落したので、今度はExportされたクラスを取り込むImportを見ていこうと思います。これさえマスターすれば、基本はおさえたも当然です!!!ということで気合を入れていきましょう。 名前指定でImport Importは、もともとExportされたも…

Managed Extensibility Framework入門 その6「拡張可能なアプリケーション作成」

ここまで基本をみっちりやってきました。まだまだMEFの底は遥かかなたにありますが、ここでやった知識だけでも一応拡張可能なアプリケーションというやつは作れます。なのでさっくり作ってみようと思います。 作りたいもの 起動すると、何かしら画面に表示さ…

Managed Extensibility Framework入門 その3「Export」

さて、前回はMEFを使ってHello world的なプログラムを作成しました。基本的には、クラスにExport属性をつけてカタログに公開するという設定をして、Import属性をつけてカタログ内のクラスを設定してもらうという流れでした。ということで、ExportとImportの…

TwitterクライアントのTweenのコードをコード分析にかけてみた

C#

あの、有名なTwitterクライアントのTweenのソースコードにVisual Studioが提供するコード分析機能で分析をかけてみました。あくまで、コードの奥深くまで踏み込んだ分析はしてないので、実際のコードを見ると、また違った印象を受けるかもしれませんが、Visu…

Behavior in VS2010 WPF and SL Designer v2.2

Behavior in Visual Studio 2010 WPF and Silverlight Designer- Support Tool Trigger系のクラスの中で一番使用頻度が高いと思われるEventTriggerのEventNameプロパティをドロップダウンから選択できるようにしました。WPFとSilverlight両方対応しています…

Managed Extensibility Framework入門 その1「はじめに」

参考情報 入門の最初にいきなり参考情報というのもなんですが、以下のサイトで独学出来る人はこれから書くであろう一連のエントリは見なくてもいいと思います。もし、見て頂けるなら、この解釈間違ってるとか、この記述がおかしいとコメントなどで指摘して頂…

Managed Extensibility Framework入門 その2「使うに当たって覚えておきたいこと」

さて、前回はMEFというよりはDIコンテナとはなんぞや?ということについて語ってしまうような内容になってしまいました。今回はMEFを使う上で知っておきたいクラスと、その役割について説明します。因みに、ここで使用するのは基本的にMEFを使うのに必要なも…

MVVMでVMからVへの通知方法を思いついたので書いてみた

注意:思いついただけです。最適な方法ではないと思います。 今回思いついたことのネタ元 思いついたといっても過去に人がやってるものをちょっといじくった感じです。ネタ元はこれが近いというか、ほぼそのままのイメージです。 MVVM パターンで VM から VI…

今日のEventNameプロパティサポートの進捗

WPF

EventTriggerのSourceObjectやSourceNameが指定されてないときにEventNameをアタッチしてる親のクラスのイベントのリストから選択できるようにしてみました。現状WPFのみの対応です。 一応、CodePlexのほうにアップしておきました。 http://vsbehaviorsuppor…

VS 2010のデザイナでのBehaviorサポートの進捗

WPFでのデザイナとSilverlightでのデザイナでBehaviorやTriggerActionをGUIで入力できる拡張機能をリリースしてひと段落といった感じです。 Behavior in Visual Studio 2010 WPF and Silverlight Designer- Support Tool ただ、一番よく使うであろうEventTri…

Oracle用のEntity FrameworkのプロバイダがBeta版だって!?

C# EF

http://thedatafarm.com/blog/data-access/oracle-entity-framework-beta-released-today/もしかして、CodeFirst + Oracleということもできるのかな・・・。

Visual Studio 2010のWPFとSilverlightのデザイナでBehaviorやTriggerActionを追加できるようにしてみた v2

先日WPF用に作ったツールをSilverlightでも使えるようにしました。 ダウンロード 以下のサイトで公開しています。 Behavior in Visual Studio 2010 WPF and Silverlight Designer- Support Tool ツールの目的 BehaviorやTriggerActionはWPF/Silverlightアプ…

どうでもいいことですが人見知りです

割と人見知りなので、なるべく個人的なことで人とかかわりあうのは避けたいです。なので、勉強会のような見知らぬ人の集まる所に乗り込むのには、かなりの勇気がいります。 あとは、微妙にネット上で知ってる人と意図せぬ所での遭遇は避けたいという気持ちも…

BehaviorのVisual StudioのWPFデザイナのサポート機能をCodePlexにあげてみた

WPF

意外と簡単にCodePlexにプロジェクト作れるんですね。TFS初体験。 http://vsbehaviorsupport.codeplex.com/ そして、英語できる人正しい英語を教えてくれるとすごく・・・うれしいです。

Visual Studio 2010のWPFデザイナ上でのBehaviorとTrigger/Actionの入力支援機能を作りました

WPF

先日のエントリでBehaviorだけの追加に対応したものは出しましたが、今回はTriggerとActionにも対応しました。一応これで、Visual Studio 2010しか持ってないひとでも、ばりばりBehaviorとTrigger/Actionを使った開発を楽しんでください。 使い方とか 画像差…

WPFのプロパティエディタをちょっとカスタマイズ

WPF

今回は、Windowを継承したクラスの一覧を取得してプロパティエディタでドロップダウンさせたいという要望です。 mnowさんにTypeConverter使えばいいよと教えてもらって、考えてみたら昔自分で記事まで書いてました。 ドロップダウンで選択させたい というこ…

Visual StudioのデザイナでBehaviorをサポートしてみた

WPF

プレゼンテーションロジックをカプセル化したり巷で流行のMVVMとかでも大活躍のBehaviorですが、当然のように使われてたりしますが、実はVisual Studioの場合はデザイナのサポートが無いため手でXAMLをしこしこ書かないといけません。 個人的にはBlendを使え…

手軽なスクリプト言語としてのF# その26「例外」

F#

fparsecというパーサに手を出してみましたが、まだ力不足で使いこなせる気がしなかったので基本に戻ってきました。今日は悲しいかな例外です。 例外は、C#の例外と同じものだと思ってもらってOKだと思います。私はそう思ってます。F#での例外の定義の仕方は…

最近言われてるMVVMの開発方法について

大前提すぎてあまり書かれてないことだけど大事なことなので・・・。 Expression Blendが無いと話しになりません!! (Behaviorの適用を手書きでやるくらいならコードビハインド書いたほうが現実的かもしれないという気もします)以上です。