Как использовать имя медиаэлемента, созданного кодом и используя его имя в другом методе? - PullRequest
0 голосов
/ 29 апреля 2011

Я использую Visual Studio 2010, c # WPF. Я создал элемент управления MediaElement во время выполнения;

MediaElement video= new MediaElement();
video.Width = 400;
video.Height = 400;
video.Play();

video.Source = new Uri(path, UriKind.Relative);

В представлении XAML я создал 2 кнопки, Play и Stop, которые я покажу видимыми, только если создан mediaElement. Но мне нужно добавить click_events к этим 2 кнопкам. Но когда я пишу video.Play();, он не знает этого имени. Кто-нибудь знает, как заставить это имя распознаваться в этих отдельных методах?

private void play_Click(object sender, RoutedEventArgs e)
{
   video.Play();    //syntax error under video
}

private void stop_Click(object sender, RoutedEventArgs e)
{
   video.Play();    //syntax error under video
}

1 Ответ

1 голос
/ 29 апреля 2011

Вам необходимо определить video как переменную-член. Например, скажем, вы находитесь в классе под названием MediaWindow ...

public class MediaWindow
{
    private MediaElement video = new MediaElement { Width = 400, Height = 400};

    public void SetVideoSource(string path)
    {
        video.Source = new Uri(path, UriKind.Relative);
    }

    private void play_Click(object sender, RoutedEventArgs e)
    {
       video.Play();
    }

    private void stop_Click(object sender, RoutedEventArgs e)
    {
       video.Stop(); 
    }
}

Отрегулируйте для вашей фактической структуры класса и настройки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...