2011-04-29 30 views
0

我正在使用Visual Studio 2010,c#WPF。我在運行時創建了一個MediaElement控件;如何使用代碼創建的mediaElement的名稱並在另一個方法中使用它的名稱?

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

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

在XAML視圖我創建2個按鈕,播放和停止,我將顯示可見只有如果創建的MediaElement。但我需要爲這兩個按鈕添加click_events。但是當我寫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

您需要將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(); 
    } 
} 

調整您的實際班級結構和設置。

相關問題