如何获取数据模板的 x:Key in 代码
本文关键字:Key 代码 in 何获取 获取 数据 | 更新日期: 2023-09-27 17:56:19
我有一个使用x:Key来标识自身的DataTemplate,如下所示:
<DataTemplate
x:Key="myTemplate
>
...
</DataTemplate>
在其他一些 C# 代码中,我有一个对这个数据模板的引用,但实际上想要检索数据模板的 x:Key。
问题:
有没有办法在 C# 中从数据模板中检索数据模板的 x:Key?
您可以遍历所有资源并检查其密钥。
public static string GetResourceInDictionary(ResourceDictionary dictionary, object item)
{
return (from DictionaryEntry key in dictionary
where key.Value == item
select key.Key.ToString()).FirstOrDefault();
}
然后将其与:
string resourceKey = GetResourceInDictionary(this.Resources, myResource);
试试这个:
foreach (var key in this.Resources.Keys)
{
Console.WriteLine(key);
}