0
我有一個帶有文本文件編輯器的項目,但我需要實現功能,其中文件中有更改會顯示星號(*)
我在文件標題旁邊的標題,所以它會通知用戶文件發生了變化......當您編輯xaml文件或編輯您獲得的代碼時,在visual studio中也是如此(*)
該文件被修改。當文件更改時顯示在標題中的通知星標(*)
當光盤上的文件被修改時,是否可以添加某些方法來執行此功能?
我有一個帶有文本文件編輯器的項目,但我需要實現功能,其中文件中有更改會顯示星號(*)
我在文件標題旁邊的標題,所以它會通知用戶文件發生了變化......當您編輯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;
}
通知然後,你可以綁定窗口的DecoratedTitle:
<Window Title="{Binding DecoratedTitle}" >
問候
謝謝..它的作品像一個冠軍..謝謝你 –
如果您發現有未保存的變化,你可以設置一個「髒」標誌。無論這是否爲真,顯示或隱藏'*' – Domysee