处理TextBox OnChange事件的智能方法

时间:2017-03-29 12:24:52

标签: c#

我正在寻找处理从右向左移动的文本的最佳方式。

所以,我有这个工作代码:

// write text for simulation view
File.WriteAllText("text1.txt", textBox1.Text, Encoding.UTF8);   
// delete temporary processed video with overlayed text
ProcessFileOperations.deleteFile("text1.avi");

ProcessFileOperations.overlayText(text1ColorButton.BackColor.Name, filePath, 0);
mediaPlayer.URL = "text1.avi";
mediaPlayer.Ctlcontrols.play();

这会创建一个带有重叠滚动文字的视频,并立即将其作为模拟播放。当我快速写入文本时,问题就出现了,因为windowmediaplayer是"正在下降"一段时间 - 黑色图像。如何让用户放置文本和更新媒体文件有一些延迟或暂停不要"冻结"主线程?

1 个答案:

答案 0 :(得分:1)

这使得更改运行另一个线程,并且一旦完成的媒体播放器运行新文件

await Task.Run(()=>{
  // write text for simulation view
    File.WriteAllText("text1.txt", textBox1.Text, Encoding.UTF8);   
    // delete temporary processed video with overlayed text
    ProcessFileOperations.deleteFile("text1.avi");


ProcessFileOperations.overlayText(text1ColorButton.BackColor.Name, filePath, 0);
});

mediaPlayer.URL = "text1.avi";
mediaPlayer.Ctlcontrols.play();