SpeechSynthesizer jak przekazać wybrany głos jako parametr do metody.

0

Jak przekazać wybrany głos jako parametr do metody? Wczytuję listę zainstalowanych głosów do comboBoxa.

 
SpeechSynthesizer obSpeech = new SpeechSynthesizer();
public List<string> listaGlosow = new List<string>();

        public void pobierzZaladujGlosy(ComboBox cBWyborGlosuM)
        {
            //nazwaGlosuWybranego.Name = obSpeech.Voice.Name;
            
            foreach (var voice in obSpeech.GetInstalledVoices())
            {
                //Console.WriteLine(voice.VoiceInfo.Description);
                listaGlosow.Add(voice.VoiceInfo.Description);
                for (int i = 0; i < listaGlosow.Count; i++)
                {
                    cBWyborGlosuM.Items.Add(listaGlosow[i]);
                }
                
            }
        }
 
        private void odczytajNagranieSyntezator(string text, VoiceInfo voice)//metoda czytająca słowo
        {
            try
            {
                synth.Voice.Name=voice.Name; //jak przypisać wybrany głos
                synth.Speak(text);
            }
            catch (Exception)
            {
                MessageBox.Show("Zainstaluj dowolny syntezator mowy.", "Komunikat");
            }
            finally
            {
                synth.Dispose();
            }
        }

0

Znalazłem rozwiązanie synth.SelectVoice(nazwaGlosu);

1 użytkowników online, w tym zalogowanych: 0, gości: 1