簡體   English   中英

INotifyPropertyChanged具有類的屬性嗎?

[英]INotifyPropertyChanged with a property that's a class?

如果我注冊以通知財產變更,它將僅在重新分配實際財產時通知。 因此,如果我有一個文本框屬性,它將不會通知文本框文本是否更改,對嗎? 有什么辦法可以使其工作嗎?

如果您對對象的特定屬性感興趣,則應在值本身上使用類似INotifyPropertyChanged的機制。 不幸的是,盡管在這種情況下WinForms的TextBox沒有實現INotifyPropertyChanged 為了偵聽對其Text屬性的更改,您需要預訂TextChanged事件

我很難想象為什么一個類會公開TextBox類型的屬性。 無論如何,如果您最終完成了這樣的設計,則可以簡單地添加兩個屬性,每個屬性用於TextBox本身和內部文本,然后偵聽TextBoxTextChanged事件並在其上觸發NotifyPropertyChanged

但是我確實認為您需要重新考慮您的方法。 如果您的類公開了TextBox類型的屬性,則實際上應該確實存在一些地方,您實際上將新的TextBox分配給了一個類實例,並且高層聽了此更改。 我認為情況並非如此。 您幾乎肯定會在尋找文本更改,因此應該公開一個string類型的屬性。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM