Я пытался использовать .this и создавать экземпляр класса для обращения к filename или _audioFile как к полям класса, меняя у них модификаторы доступа, не выходит...
public partial class frmMainForm : Form
{
private WaveOutEvent _outputDevice;
private AudioFileReader _audioFile;
public frmMainForm()
{
InitializeComponent();
}
// ОБРАБОТЧИК СОБЫТИЙ ДЛЯ КНОПКИ "OPEN"
private void OnbuttonOpenClick(object sender, EventArgs e)
{
OpenFileDialog dialog = new OpenFileDialog();
if (dialog.ShowDialog() == DialogResult.OK)
{
try
{
string fileName = dialog.FileName; // получаем имя файла
_audioFile = new AudioFileReader($"{fileName}"); // Читаем аудиофайл, используя расширение в названии.
}
catch (COMException ex)
{
MessageBox.Show($"Неверный формат файла!"); // Сообщаем пользователю обошибке, если пытается открыть неподхдящий формат.
}
}
}
public class WavFileUtils
{
// необходимо получить filename из прошлого метода класса
// чтобы использовать в методе ниже
private static TimeSpan GetWavFileDuration(filename)
{
WaveFileReader wf = new WaveFileReader(fileName);
return wf.TotalTime;
}