2009-03-05 16 views

答えて

3

以下を試してください。ない不可欠WPFの専門家あなたは少し

public void Example() 
{ 
    var factory = new FrameworkElementFactory(typeof(TextBlock)); 
    factory.SetBinding(TextBlock.TextProperty, new Binding("Text")); 

    var dataTemplate = new DataTemplate(); 
    dataTemplate.VisualTree = factory; 
    dataTemplate.Seal(); 
} 
+0

なぜSeal()を呼び出していますか?これは、テンプレートを作成してTelerikグリッドにバインドしたときの問題を修正しましたが、DateTemplateを動的に作成するために見つけたすべての例で、他の人がSeal()を使用していませんでしたか? –

+0

@RalphWillgossこの回答を書いてから4年が経ちましたが、その時に「シール」と呼ばれる理由を忘れてしまいました:( – JaredPar

+0

ありがとう、私はもっと調査をして、私が見つけたものを見るかもしれません。私はそれがすべて働いている、何がフードの下で起こっているのか知りたい:-) –

3

C#からDataTemplatesを作成する正しい方法は、XamlReaderを使用して質問に書いたものを与えることです。

どちらが不快であるか、言い表せません。ごめんなさい。

2

これを変更する必要があるかもしれないので、私はちょうどオンラインドキュメントをチェックする - アランは正しいです - XamlReaderを使用しています。 Microsoftによると、FrameworkElementFactoryクラスはXAMLのすべての機能をサポートしておらず、将来的には廃止される可能性があります。

私は、DataTemplatesをオンザフライで変更するためにFrameworkElementFactoryを使用しましたが、問題はないと言いました。

関連する問題