title: Is it possible to databind to an extension method?
body: <p>The lack of questions on the subject may be an indication of code smell here, but... Is it possible to write an extension method for a class and databind to that like you would a property?</p>
  
  <p>The assumption is that I am provided with a class structure that I'm not able to fundamentally change, but I want to express a series of its boolean properties as a string for display purposes.</p>
  
  <p>Simplified base class:</p>
  
  <pre><code>public class Transmission
  {
      public int ID { get; set; }
      public bool Cancelled { get; set; }
      public bool Stored { get; set; }
      public bool Recorded { get; set; }
  }
  </code></pre>
  
  <p>My extension method:</p>
  
  <pre><code>public static class Extensions
  {
      public static string Status(this Transmission trans)
      {
          StringBuilder sb = new StringBuilder("|");
          if (trans.Cancelled)
              sb.Append("| Cancelled ");
          if (trans.Recorded)
              sb.Append("| Recorded ");
          if (trans.Stored)
              sb.Append("| Stored ");
          sb.Append("||");
  
          return sb.ToString();
      }
  }
  </code></pre>
  
  <p>To add further complexity, I'm being passed a list of these things, and I'm trying to bind to a datagrid (with severely limited XAML experience).</p>
  
  <pre><code>&lt;GroupBox Header="Here is an amazing list of results for you to violate horribly."&gt;
      &lt;DataGrid ItemsSource="{Binding Transmissions, Mode=OneWay}" AutoGenerateColumns="False"&gt;
           &lt;DataGrid.Columns&gt;
              &lt;DataGridTextColumn Width="*" Header="Local ID" Binding="{Binding ID, Mode=OneWay}"/&gt;
              &lt;DataGridTextColumn Width="*" Header="Status" Binding="{Binding Status, Mode=OneWay}"/&gt;
           &lt;/DataGrid.Columns&gt;
      &lt;/DataGrid&gt;
  &lt;/GroupBox&gt;
  </code></pre>
  
  <p>I've tested the code and was able to bind to ID without any difficulty. The 'Status' however, is not being picked up at all. Is there a trick to binding to an extension property? Or would it be more prudent to just write a decorator/facade class and bind to that?</p>