title: How to perform LINQ query over Enum?
body: <p>Below is my <code>Enumerator List</code>:</p>
  
  <pre><code>public enum StatusEnum
  {
      Open = 1,
      Rejected = 2,
      Accepted = 3,
      Started = 4,
      Completed = 5,
      Cancelled = 6,
      Assigned = 7
  }
  </code></pre>
  
  <p>I need to bind this to a <code>Combobox</code>, but, only show a few specific statuses and ignore the rest.</p>
  
  <p><strong>This is what I have so far:</strong></p>
  
  <pre><code>public static List&lt;Activity.StatusEnum&gt; StatusList()
  {
          IEnumerable&lt;Activity.StatusEnum&gt; query = Enum.GetValues(typeof(Activity.StatusEnum)).Cast&lt;Activity.StatusEnum&gt;()
                          .Where(x =&gt; x == Activity.StatusEnum.Open
                              || x == Activity.StatusEnum.Rejected
                              || x == Activity.StatusEnum.Accepted
                              || x == Activity.StatusEnum.Started);
          return query.ToList();
  }
  </code></pre>
  
  <p>However, I feel that the code is little messy and is not a correct approach to bind filtered <code>Enum</code> list to a <code>Combobox</code>. 
  Can anyone suggest a more robust way of doing this?</p>
  
  <h2>Update</h2>
  
  <p>I might need to change the Order of selection. So I need a generic solution which doesn't only get the first X number of statuses.</p>