如何將此XAML代碼轉換爲C#代碼?如何將此XAML代碼轉換爲C#代碼?
<Window.Resources>
<DataTemplate x:Key="itemtemplate">
<TextBlock Text="{Binding Path=Text}"/>
</DataTemplate>
</Window.Resources>
如何將此XAML代碼轉換爲C#代碼?如何將此XAML代碼轉換爲C#代碼?
<Window.Resources>
<DataTemplate x:Key="itemtemplate">
<TextBlock Text="{Binding Path=Text}"/>
</DataTemplate>
</Window.Resources>
請嘗試以下操作。不是當務之急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();
}
從C#創建DataTemplates的正確方法是使用XamlReader併爲其提供您在問題中編寫的內容。
這是不愉快的,至少可以說。抱歉。
我只是檢查了在線文檔 - 阿倫是正確的 - 使用XamlReader。 根據Microsoft的說法,FrameworkElementFactory類不支持XAML的所有功能,將來可能會被棄用。儘管如此,我已經使用FrameworkElementFactory來即時更改DataTemplates,並且沒有任何問題。
你爲什麼打電話給Seal()?這解決了我在創建模板並將其綁定到Telerik Grid時遇到的問題,但是在爲動態創建DateTemplate而發現的所有示例中,其他人都沒有使用Seal()? – 2013-07-24 08:25:12