首页 > 解决方案 > 如何添加此功能?

问题描述

图片

最近我开始学习 WPF,我想做一些我不确定它是如何完成的。基本上我希望在其应用程序打开时具有红色的文本为绿色,在关闭时为红色。帮助将不胜感激。我试过这个,但主要是因为整个应用程序停止,直到程序关闭,并且由于某种原因会改变文本的颜色,但主要是当我显示一个消息框时

private void ColorChangeHandler(Process process, TextBlock textBlock)
    {
        textBlock.Foreground = Brushes.Green;
        MessageBox.Show("Green");
        process.WaitForExit();
        textBlock.Foreground = Brushes.Red;
        MessageBox.Show("Red");
    }

标签: c#wpf

解决方案


使您的处理程序异步并使用WaitForExit 的异步版本

private async Task ColorChangeHandler(Process process, TextBlock textBlock)
{
    textBlock.Foreground = Brushes.Green;
    await process.WaitForExitAsync();
    textBlock.Foreground = Brushes.Red;
}

推荐阅读