如果另一条消息要说出来,如何停止 SpeakAsync?

How to Stop SpeakAsync if another message were about to speak out?

我正在尝试使用 c# 作为我的代码来创建一个具有语音识别功能的网页。 请帮助我,因为我想知道如何在另一条消息开始说话时停止 SpeakAsync 以传递完整消息。

这样的伪代码

 protected void Button1_Click(object sender, EventArgs e)
    {
        ss.SpeakAsync(CurrentStop); // it means if there is a current message it should stop before delivering the next line
        ss.SpeakAsync("Phrase and Sentence");
    }

    protected void Button2_Click(object sender, EventArgs e)
    {
        ss.SpeakAsync(CurrentStop);
        ss.SpeakAsync("Phrase is a group of words without a complete thought.");
    }

请帮帮我。这是我第一次使用c#以及system.speech

使用GetCurrentlySpokenPromptSpeakAsyncCancel方法取消当前提示:

var current = ss.GetCurrentlySpokenPrompt();

if (current != null)
    ss.SpeakAsyncCancel(current);

完整示例

var ss = new SpeechSynthesizer();

ss.SpeakAsync("This is a test.");

Thread.Sleep(300);

var current = ss.GetCurrentlySpokenPrompt();

if (current != null)
    ss.SpeakAsyncCancel(current);

ss.SpeakAsync("Goodbye.");