2012-05-08 56 views
0

我有一個wpf wpplication,其中包含許多用戶控件。其中一個控件有一個名爲ButtonsEnabled的屬性。這是用戶控件中的bool DependencyProperty。該屬性綁定到該控件上的幾個按鈕的IsEnabled屬性。當綁定屬性發生變化時,多重綁定不會觸發

此用戶控件用於MainWindowMainWindow在其中有幾個視圖模型對象,稱爲EocMonitorComMonitor。這些都來自實現INotifyPropertyChanged的抽象基類。 UserControl上的ButtonsEnabled屬性使用多重綁定和實現我編寫的IMultiConverter的類綁定到Status屬性。

問題是,即使Status屬性發生更改時引發PropertyChanged事件,IMultiConverter在最初被調用後也沒有被調用,因此ButtonsEnabled屬性的值未發生更改。結果,按鈕不能啓用。

我需要做些什麼來完成這項工作?

+3

添加源代碼,它會很容易地告訴你你需要什麼。 – stukselbax

+0

您可能必須將'UpdateSourceTrigger'設置爲'PropertyChanged'。我不能確定,因爲你還沒有發佈任何源代碼! – Dennis

+0

'UpdateSourceTrigger'被設置爲'PropertyChanged'。 –

回答

0

我對這個問題做了一個解決方案,因爲在我們達到這個版本的代碼凍結之前,我已經沒有足夠的時間了。我所做的是將ButtonsEnabledDepdendencyProperty添加到MainWindow類,並將其綁定到用戶控件的ButtonsEnabled屬性。然後,我在MainWindow中添加了一個PropertyChanged事件處理程序,並在創建對象時將它們註冊爲DbMonitorComMonitor對象。然後,我在PropertyChanged事件處理程序中編寫代碼,以正確設置MainWindowButtonsEnabled

一切正常,我會擔心讓其他方法在稍後時間工作。也許。

相關問題