1

次のように、ax:Keyを使用して自分自身を識別するDataTemplateがあります。

<DataTemplate 
    x:Key="myTemplate
    >
    ...
</DataTemplate>

他のいくつかのC#コードでは、このDataTemplateへの参照がありますが、実際にはDataTemplateのx:Keyを取得したいと考えています。

質問:

C#でDataTemplateからDataTemplateのx:Keyを取得する方法はありますか?

4

2 に答える 2

1

すべてのリソースを繰り返し処理し、それらのキーを確認することができます。

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);
于 2013-01-27T22:05:58.690 に答える
0

これを試して:

foreach (var key in this.Resources.Keys)
{
    Console.WriteLine(key);
}
于 2013-01-27T22:06:14.380 に答える