XAML 如何在C#中创建WinUI中的DataTemplate?

lx0bsm1f  于 2022-12-07  发布在  C#
关注(0)|答案(1)|浏览(152)

如何在WinUI应用程序中用C#创建一个DataTemplate,而不将模板存储为XAML中的资源或从XAML字符串加载(这非常慢)?
在WPF中,可以使用VisualTree属性,但WinUI中不存在此属性。
请注意,我已经知道这个问题:How to programatically create a dataContext and assign a grid to it in c# (code behind)与我的答案不符

eagi6jfj

eagi6jfj1#

在WinUI 3中以编程方式创建DataTemplate的唯一方法是使用XamlReader.Parse方法。
不清楚为什么您认为与使用WPF中的VisualTree属性和FrameworkElementFactory相比,这“非常慢”。可能类型安全性更低,更容易出错,但性能应该不是问题。
此外,documentation长期以来一直声称,使用FrameworkElementFactory“* 类是一种不推荐使用的以编程方式创建模板的方法。

相关问题