我的应用程序中有一个语音课,并且希望能够查看它是在听,录制,听写还是无响应;

我想要做的就是为3个可能值中的1个分配某种变量(SpeechState),并对其进行检查,如下所示:

startListeningButton_Click(object sender, EventArgs e)
{
   SpeechState = SpeechState.Listening;
}

stopListeningButton_Click(object sender, EventArgs e)
{
   if(SpeechState.Listening)
   {
      // Code to STOP listening goes here.
   }
}


我曾经尝试过实现troolean,但这并不是我所追求的。我在追求类似的东西:

if(checkBox1.CheckState == CheckState.Checked)
{
   // Do something
}


我该如何实现?

最佳答案

您应该为此enum

public enum SpeechState
{
   Listening,
   Recording,
   Dictating,
   Unresponsive
}


然后,您可以按照显示的设置完全使用它,尽管检查是:

if(this.SpeechState == SpeechState.Listening)




编辑以回应评论:

为了将其放置在您的课程上,您需要一个属性来存储它:

public class YourClass
{
     public SpeechState SpeechState { get; set; }
}


然后,您可以在类上将此属性设置为一个值。

10-04 14:18