Uwp 如何自动保存RichEditBox文本?

Uwp 如何自动保存RichEditBox文本?,uwp,autosave,fileloadexception,richeditbox,Uwp,Autosave,Fileloadexception,Richeditbox,我尝试了FileIO.WriteTextAsync;对于许多事件,包括Grid.Loaded和RichEditBox.TextChanged,但该方法是异步的,并且与称为上一个周期的进程冲突。因此,System.IO.FileLoadException出现以下描述: 进程无法访问该文件,因为其他进程正在使用该文件 那么在这种情况下我能做什么呢?TextChanged事件触发太频繁-您可以在一秒钟内键入几个字符-处理TextChanged事件对于UI线程来说太繁重 您可以在计时器勾号事件处理程序中

我尝试了FileIO.WriteTextAsync;对于许多事件,包括Grid.Loaded和RichEditBox.TextChanged,但该方法是异步的,并且与称为上一个周期的进程冲突。因此,System.IO.FileLoadException出现以下描述:

进程无法访问该文件,因为其他进程正在使用该文件

那么在这种情况下我能做什么呢?

TextChanged事件触发太频繁-您可以在一秒钟内键入几个字符-处理TextChanged事件对于UI线程来说太繁重

您可以在计时器勾号事件处理程序中执行此保存操作,设置足够长的间隔,以确保在下一个勾号发生之前完成该操作

DispatcherTimer timer; 

public MainPage()
{
    this.InitializeComponent();

    timer = new DispatcherTimer() { Interval = TimeSpan.FromSeconds(10) };
    timer.Tick += Timer_Tick;
    timer.Start();
}

private async void Timer_Tick(object sender, object e)
{
    await FileIO.WriteTextAsync(file, tbInput.Text);
}