什么可以用作双面资源字典?

Tot*_*tty 6 c# resourcedictionary

我正在使用ResourceDictionary,但我希望能够使用其他项目查找值或键.每个都是独一无二的,所以这不是问题.是否有具有此双面查找功能的类型?

Cra*_*son 7

没有内置,但这很容易写.我可能会为此实现IDictionary ...然后您将ResourceDictionary转储到您的自定义类型中.

public class DoubleLookup<TKey, TValue>
{
  private IDictionary<TKey, TValue> keys;
  private IDictionary<TValue, TKey> values;

  //stuff...

  public void Add(TKey key, TValue value)
  {
    this.keys.Add(key, value);
    this.values.Add(value, key);
  }

  public TKey GetKeyFromValue(TValue value)
  {
    return this.values[value];
  }

  public TValue GetValueFromKey(TKey key)
  {
    return this.keys[key];
  }


}
Run Code Online (Sandbox Code Playgroud)