gpt4 book ai didi

c# - 在代码隐藏中创建 DataTemplate

转载 作者:IT王子 更新时间:2023-10-29 04:31:58 26 4
gpt4 key购买 nike

如何以编程方式向数据模板添加控件?

例如。下面我创建了 TextBlock 和 DataTemplate。

TextBlock text = new TextBlock();
DataTemplate template = new DataTemplate();

现在我需要将 TextBlock 添加到 DataTemplate。如何实现?

我知道在代码后面还有其他添加数据模板的方法1. 在 XAML 中创建一个数据模板并将其加载到代码后面2.使用XamlParser创建和添加

但我需要按照我在示例中展示的方式进行操作。

需要一些帮助。

最佳答案

尽管Archedius's method有效,正式它已被弃用,而是推荐以编程方式创建模板的方法是使用 XamlReader 类的 Load 方法从字符串或内存流加载 XAML,如下所示...

public DataTemplate Create(Type type)
{
StringReader stringReader = new StringReader(
@"<DataTemplate
xmlns=""http://schemas.microsoft.com/winfx/2006/xaml/presentation"">
<" + type.Name + @" Text=""{Binding " + ShowColumn + @"}""/>
</DataTemplate>");
XmlReader xmlReader = XmlReader.Create(stringReader);
return XamlReader.Load(xmlReader) as DataTemplate;
}

官方线路摘自msdn:http://msdn.microsoft.com/en-us/library/system.windows.frameworkelementfactory.aspx

代码示例来自 Fredrik Hedblad 的帖子:Problems with XamlReader generating DataTemplate

关于c# - 在代码隐藏中创建 DataTemplate,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5471405/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com