[英]How to change an image source after clicking a button?
我正在使用Image
作為按鈕。 因此,默認情況下,我需要圖像源為/image1.png
,當我單擊圖像時,它將創建一個if
函數並將其圖像源更改為/image2.png
。 我正確地更改了圖像,問題是我必須單擊兩次圖像才能在第一次單擊時進行更改。
這就是我正在使用的:
public MainWindow()
{
InitializeComponent();
IsPlaying = false;
//PlayBtn.Source = (ImageSource)new ImageSourceConverter().ConvertFrom(@"C:\Users\myusername\Documents\Visual Studio 2013\Projects\Project1\Project1WPF\image1.png");
}
private void PlayBtn_MouseDown(object sender, MouseButtonEventArgs e)
{
if(IsPlaying == false)
{
PlayBtn.Source = (ImageSource)new ImageSourceConverter().ConvertFrom(@"C:\Users\myusername\Documents\Visual Studio 2013\Projects\Project1\Project1WPF\image1.png");
IsPlaying = true;
}else if(IsPlaying == true)
{
PlayBtn.Source = (ImageSource)new ImageSourceConverter().ConvertFrom(@"C:\Users\myusername\Documents\Visual Studio 2013\Projects\Project1\Project1WPF\image2.png");
IsPlaying = false;
}
要解決您的問題,只需正確設置初始狀態即可。 就目前而言,您擁有以下功能:
isPlaying
設置為false
isPlaying
為false
,所以圖像設置為“ image1”(您的第一個塊) isPlaying
設置為true
isPlaying
為true
所以圖像設置為“ image2”。 因此,當當前值為false
時翻轉設置的圖像,或者將初始值設置為true
即可獲得您描述的行為。
順便說一句,您可能根本不應該在后台代碼中執行此操作。 Source
屬性應該綁定到您的View模型(通過轉換器),並且按鈕的Command
更改該源。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.