在 WPF 应用程序中更改按钮背景图像
Changing Button's BackgroundImage in WPF app
在我的 C# 应用程序中,我试图更改按钮的背景图像并在几秒钟后将其更改回来。但是,背景图像直到计时器结束后才会更改,然后在您看到更改之前立即变回原始图像。
private void button1_Click(object sender, EventArgs e)
{
myImage.BackgroundImage = Properties.Resources.newImage;
System.Threading.Thread.Sleep(5000);
myImage.BackgroundImage = Properties.Resources.myImage;
}
假设这是一个 WPF 应用程序,添加 DispatcherTimer
,如以下代码片段所示:
DispatcherTimer _dispatcherTimer = new DispatcherTimer();
public MainWindow()
{
InitializeComponent();
button1.Click += button1_Click;
_dispatcherTimer.Tick += new EventHandler(dt_Tick);
_dispatcherTimer.Interval = new TimeSpan(0, 0, 0, 5);
}
private void button1_Click(object sender, RoutedEventArgs e)
{
myImage.BackgroundImage = Properties.Resources.newImage;
_dispatcherTimer.Start();
}
void dt_Tick(object sender, EventArgs e)
{
_dispatcherTimer.Stop();
myImage.BackgroundImage = Properties.Resources.myImage;
}
希望这会有所帮助。
在我的 C# 应用程序中,我试图更改按钮的背景图像并在几秒钟后将其更改回来。但是,背景图像直到计时器结束后才会更改,然后在您看到更改之前立即变回原始图像。
private void button1_Click(object sender, EventArgs e)
{
myImage.BackgroundImage = Properties.Resources.newImage;
System.Threading.Thread.Sleep(5000);
myImage.BackgroundImage = Properties.Resources.myImage;
}
假设这是一个 WPF 应用程序,添加 DispatcherTimer
,如以下代码片段所示:
DispatcherTimer _dispatcherTimer = new DispatcherTimer();
public MainWindow()
{
InitializeComponent();
button1.Click += button1_Click;
_dispatcherTimer.Tick += new EventHandler(dt_Tick);
_dispatcherTimer.Interval = new TimeSpan(0, 0, 0, 5);
}
private void button1_Click(object sender, RoutedEventArgs e)
{
myImage.BackgroundImage = Properties.Resources.newImage;
_dispatcherTimer.Start();
}
void dt_Tick(object sender, EventArgs e)
{
_dispatcherTimer.Stop();
myImage.BackgroundImage = Properties.Resources.myImage;
}
希望这会有所帮助。