2013-02-01 28 views
1

我得到了它,每次觸發這個功能我按輸入標籤檢查當前顯示哪個圖像? WPF

private void WordInput_KeyDown(object sender, KeyEventArgs e) 
    { 
     if (e.Key == Key.Enter) 
     { 
      WordInput.Text = String.Empty; 
      Smiley.Source = new BitmapImage(new Uri(@"FailSmile2.png", UriKind.Relative)); 
     } 
    } 

這會改變圖像上面的一個(FailSmile2.png) 但現在,我要檢查,如果它的FailSmile2正被顯示,然後我想改爲另一張圖片,而不是相同的功能。我是否應該使用IF的檢查來源?在那種情況下,如何?

謝謝!

回答

2

難道只是把它保存爲你的類中的私有字段:

private string CurrentImagePath; 

private void WordInput_KeyDown(object sender, KeyEventArgs e) 
{ 
    if (e.Key == Key.Enter) 
    { 
     WordInput.Text = String.Empty; 

     if (CurrentImagePath == null) 
      CurrentImagePath = @"FailSmile2.png"; 
     else if (CurrentImagePath == @"FailSmile2.png") 
      CurrentImagePath = @"SomeOtherImage.png"; 

     Smiley.Source = new BitmapImage(new Uri(CurrentImagePath, UriKind.Relative)); 
    } 
} 

不知道什麼究竟你想做的事情。如果您計劃通過多張圖片騎車,最好將它們存儲在List<Uri>中,並逐個循環。本質上,以某種方式你會想要存儲你的控制的當前狀態(可能作爲一個私人領域),並基於這種變化或可能連線不同的事件。

+0

感謝您的回覆!現在,我只想要一個有效的方式來點擊時改變圖像。稍後,我將添加一個帶有bool的函數來檢查是否有真實的事情,具體取決於bool 2(或更多)不同的圖像顯示。也許我應該在我完成所有方法後再回來。 =)) –

+0

其實....你的想法是我所需要的!謝謝! =)) –