2009-12-18 245 views
1

我可以使用FrameworkElementFactory创建模板,但不推荐使用此类。根据MSDN,推荐的方法是使用XamlReader.Load从字符串或内存流中加载XAML。我得到这个工作,但认为这是有点伤心:以编程方式创建/编辑模板的最佳方法

string xaml = "a lot of XAML"; 

任何建议能够以更好的方式做到这一点?

我真正想要做的是能够动态地更改DataTemplate中的绑定路径。

<DataTemplate x:Key="DataTemplate1"> 
    <StackPanel> 
     <TextBlock>Some text</TextBlock> 
     <TextBlock Text="{Binding ThePathIWantToChange}"/> 
    </StackPanel> 
</DataTemplate> 
+0

你能解释一下吗?你想改变什么道路? – Anvaka 2009-12-18 13:27:41

+0

我添加了一些XAML以更好地显示我想要执行的操作。 – jostyposty 2009-12-18 14:16:58

回答

0

乔斯坦,

那岂不是更容易改变的属性值和上升PropertyChanged事件?更新整个数据模板的方法对我来说看起来像是矫枉过正。

+0

我正在使用WPFToolkit中的DataGrid,但不知道在编译时有多少列。我使用DataGrid的AutoGeneratingColumn事件根据业务对象中的某些信息设置不同的列类型。在某些情况下,我需要使用DataGridTemplateColumn,从而设置CellEditingTemplate和CellTemplate。当我设置这些模板时,我希望将绑定设置为由DataGridAutoGeneratingColumnEventArgs对象给出的当前PropertyName。我不确定我在这种情况下如何应用您的方法? – jostyposty 2009-12-18 14:42:35

相关问题