2009-02-26 69 views
75

我有一個只讀屬性,我需要在文本框中顯示,並在運行時得到此錯誤。我已經設置了IsEnabled="False"IsReadOnly="True" - 沒有運氣。 其他搜索說readonly應該修復它,但不適合我。 我有一個醜陋的解決方法,通過添加一個虛擬setter ...TwoWay或OneWayToSource綁定無法在只讀屬性上工作

+5

如果你想雙向綁定,屬性setter必須是公開的。請參閱http://stackoverflow.com/questions/8773150/invalidoperationexception-a-twoway-or-onewaytosource-binding-cannot-work-on-th – 2012-11-19 15:04:56

+1

而從這個盲目顯而易見的部門,制定者也必須*存在*;即只有一個get的屬性將展示相同的問題。 – noonand 2015-10-22 08:52:17

回答

126

很難猜測沒有代碼,但你應該能夠將BindingMode設置爲OneWay。

<TextBox Text="{Binding Path=MyProperty, Mode=OneWay}" /> 

或代碼:

Binding binding = new Binding(); 
binding.Mode = BindingMode.OneWay; 
相關問題