title: Troolean-type values
body: <p>I have a speech class in my app and would like to be able to see if it's listening, recording, dictating, or non-responsive;</p>
  
  <p>What I would like is to be able to do is assign some kind of variable (SpeechState) just 1 of 3 possible values, and check against it too, like this:</p>
  
  <pre><code>startListeningButton_Click(object sender, EventArgs e)
  {
     SpeechState = SpeechState.Listening;
  }
  
  stopListeningButton_Click(object sender, EventArgs e)
  {
     if(SpeechState.Listening)
     {
        // Code to STOP listening goes here.
     }
  }
  </code></pre>
  
  <p>I have tried implementing troolean, but that's not exactly what I was after. I am after <em>something</em> similar to this:</p>
  
  <pre><code>if(checkBox1.CheckState == CheckState.Checked)
  {
     // Do something
  }
  </code></pre>
  
  <p>How can I achieve this?</p>