present@わんくま

本家はこちら

目次

Blog 利用状況

ニュース

アクセサリ

書庫

日記カテゴリ

ギャラリ

リンク

Template をコードで組み立てる

Template をコードで組み立てるときは、FrameworkElementFactory を使えば良いです。

例えば、以前 ListView の多段表示の XAML を書きましたが、 その時のテンプレートをコードで書くと次のようになります。

// 伝票種を表示する TextBlock
FrameworkElementFactory kindFactory = new FrameworkElementFactory(typeof(TextBlock));
// Kind プロパティをバインドする
kindFactory.SetBinding(TextBlock.TextProperty, new Binding("Kind"));

// 伝票種別を表示する TextBlock
FrameworkElementFactory noFlagFactory = new FrameworkElementFactory(typeof(TextBlock));
// NoFlag プロパティをバインドする
noFlagFactory.SetBinding(TextBlock.TextProperty, new Binding("NoFlag"));

// セルを多段にするための StackPanel
FrameworkElementFactory stackPanelFactory = new FrameworkElementFactory(typeof(StackPanel));
// 2つの TextBlock を追加する
stackPanelFactory.AppendChild(kindFactory);
stackPanelFactory.AppendChild(noflagFactory);

// CellTemplate を作成
DataTemplate template = new DataTemplate();
// 作成したビジュアルツリーをセット
template.VisualTree = stackPanelFactory;

後はこれを CellTemplate にセットすれば OK。

投稿日時 : 2008年10月14日 11:21

コメントを追加

No comments posted yet.
タイトル
名前
URL
コメント