這件事很簡單,但我把頭髮拉出來。爲什麼TwoWay綁定不會更新UI元素?
我正在使用mvvm Light創建視圖模型,並在視圖中我有一個屬性,我也綁定了。
private TimeSpan _eventDuration
public TimeSpan EventDuration
{
get { return _eventDuration; }
set
{
_eventDuration = value;
RaisePropertyChanged("EventDuration");
}
}
很簡單,並不複雜。現在在UI中我有一個網格,在這個網格上我使用了一個名爲RadTimeSpanPicker
的telerik
控件。這個控件就像這樣綁定到上面的屬性。
Value={Binding EventDuration, Mode=TwoWay}
現在,當我運行我的代碼,並改變我的UI RadTimeSpanControl的價值,我看到的變化發生在EventDuration財產,因爲它應該。
我的問題是,如果我改變屬性,用戶界面不會更新。
所以,只是爲了澄清。 用戶界面,我將時間範圍更改爲00:00:16
(即16秒)。我看到EventDuration屬性更改。然後我做EventDuration = TimeSpan.FromSeconds(0);
,我看到後,該屬性設置,但用戶界面仍然顯示00:00:16
UPDATE:問題就迎刃而解了 我有我的TimeSpanPicker設置爲0最小值:0:1(1秒),試圖在將0分鐘的TimeSpan分配給它忽略的UI部分。
對不起,我會糾正 – Gaz83