当文件更改时在 header 中显示通知星号 (*)

show Notification stars (*) in header when a file changes

我有一个带有文本文件编辑器的项目,但我需要实现一个功能,在其中更改文件时它将在文件标题旁边的 header 中显示星星 (*),所以它通知用户文件中有更改...当您编辑 xaml 文件或编辑您获得的代码时 visual studio 相同 (*) 该文件已修改。

当光盘上的文件被修改时,我可以添加一些方法来实现该功能吗?

如果您使用的是 MVVM,则可以使用依赖于另一个的 属性。

IsDirty 标记更改时,DecoratedTitle

上有通知
class Document : INotifyPropertyChanged
{
    private bool isDirty;
    public bool IsDirty
    {
        get { return isDirty; }
        set
        {
            isDirty = value;
            OnPropertyChanged();
            OnPropertyChanged("DecoratedTitle");
        }
    }
    private String title;
    public String Title
    {
        get { return title; }
        set
        {
            title = value;
            OnPropertyChanged();
        }
    }
    public String DecoratedTitle
    {
        get { return title + (isDirty ? " (*)" : ""); }

    }
    private void OnPropertyChanged([CallerMemberName] string propName = null)
    {
        if (PropertyChanged != null)
            PropertyChanged(this, new PropertyChangedEventArgs(propName));
    }
    public event PropertyChangedEventHandler PropertyChanged;
}

然后您可以将 window 绑定到 DecoratedTitle :

<Window Title="{Binding DecoratedTitle}"  >

此致