我正在使用MVVM使用WPF/C#的應用程序。我有一個特定ObservableCollection<>
這是綁定到ListBox
。
保證在調用OnStartup()時所有的WPF綁定都能正常工作嗎?
方案1:當應用程序運行時,我修改此ObservableCollection<>
和ListBox
預期被填充。
場景2:有了新的需求,我必須在默認情況下用這個ListBox填充一些init值。所以我添加了一個方法來在我的ViewModel中初始化它。在初始化視圖& ViewModel後,我在OnStartup()中調用此方法。 DataContext也被正確設置。在這種情況下,值在ObservableCollection中更新>,不幸的是它們沒有反映在ListBox中。
只是爲了驗證OnStartup()是否有任何問題,我從View的ContentRendered回調中添加了相同的方法調用,而不是OnStartup(),它確實工作正常。
所以我的問題,當確切的MVVM保證所有的綁定安裝正確?
編輯: 一個多觀察,如果我彈出一個消息/預期對話框列表框填充。它調用ContentRendered回調。然後它填充正確。
我幾乎確信ContentRendered應該是保證綁定的函數。
感謝您的回覆,該屬性已經初始化爲一個空的'ObservableCollection'。我試圖理解的問題是同樣的事情在正常使用情況下正常工作,它只是一個起點。我編輯並添加了一些更多的細節。 –
vrrathod