これまでのところ、WPFでの冒険で、AttachedPropertiesのさまざまな使用法を見てきましたが、さまざまな使用法のいくつかは何でしょうか。
GridやCanvasに見られるようなかなりありふれた使用法や、セッターなしでコレクションにバインドできる非常にクールなハックを見てきました。AttachedProperties用に他にどのようなアプリケーションを見つけましたか?(コードサンプルは本当に役に立ちました!)
これまでのところ、WPFでの冒険で、AttachedPropertiesのさまざまな使用法を見てきましたが、さまざまな使用法のいくつかは何でしょうか。
GridやCanvasに見られるようなかなりありふれた使用法や、セッターなしでコレクションにバインドできる非常にクールなハックを見てきました。AttachedProperties用に他にどのようなアプリケーションを見つけましたか?(コードサンプルは本当に役に立ちました!)
既存のクラスにプロパティを追加する場合は、カスタムの添付プロパティを使用します。Silverlight4で使用可能になる前に、DataGridの添付プロパティを作成しました。これにより、列を*幅で指定して、使用可能なすべてのスペースを占有できます) :
添付されている動作を調べてください。
http://www.codeproject.com/KB/WPF/AttachedBehaviors.aspx//このリンクの品質がわからない。グーグルで最初に来たもの。
オブジェクトにビヘイビアーをアタッチするということは、オブジェクトにそれ自体では実行できないことを実行させることを意味します。
アタッチされたビヘイビアーを介して実際に実行できることについては、可能性はかなり無限ですが、多くの場合、コントロールを拡張したり、コードビハインドにロジックを追加したりする必要性を減らすことができます。
添付の振る舞いは、ジェームズが言ったように私がこれまでに見た中で最も有用なものです。私が定期的に使用しているのは、テキストをテキストボックスに入れ、フォーカスを取得すると消えるようにすることです。
これには、入力例を含むグレー表示された文字列が適切に機能します。したがって、「名前」テキストボックスの場合、文字列「JoeBloggs」が含まれる可能性があります。
これが私が彼らのために見つけたいくつかのより高度な使用法です:
http://csharperimage.jeremylikness.com/2010/03/mef-instead-of-prism-for-silverlight-3.html
http://csharperimage.jeremylikness.com/2010/03/custom-export-providers-with-custom.html
(#1の弾丸に結びつく)
検証(検証動作をコントロールにアタッチします)
ローカリゼーション(リソースにアクセスして変換された値を提供するために使用される添付プロパティを見てきました)
明らかに、行動もまた別の主要なものです。
任意のイベントへのICommandの添付:http: //geekswithblogs.net/HouseOfBilz/archive/2009/08/27/adventures-in-mvvm-ndash-binding-commands-to-any-event.aspx
MVVMを使用している私たちに最適です。