title: C#: How to use a Type Converter to localize enums
body: <p>I'm trying to understand how to use Type Converters after reading <a href="https://stackoverflow.com/questions/1102578/c-replacement-of-enum-that-requires-translation-and-enumeration/1102743#1102743">this answer</a> to one of my other questions. But I'm not sure if I quite get it...</p>
  
  <p>In my particular case I would like to "convert" an enum member into a localized string by getting a resource string depending on what enum member it is. So for example if I had this enum:</p>
  
  <pre><code>public enum Severity
  {
      Critical,
      High,
      Medium,
      Low
  }
  </code></pre>
  
  <p>or this:</p>
  
  <pre><code>public enum Color
  {
      Black = 0x0,
      Red = 0x1,
      Green = 0x2,
      Blue = 0x4,
      Cyan = Green | Blue,
      Magenta = Red | Blue,
      Yellow = Red | Green,
      White = Red | Green | Blue,
  }
  </code></pre>
  
  <p>How would I create a Type Converter that could convert those members into localized strings? And how would I use it? Currently I would need to use it in a WinForms application, but more general examples are welcome as well.</p>