我有兩個自定義控件CustomControlBody和CustomControlTitle。將組件的值從一個自定義控件傳遞給另一個
CustomControlBody有一個單選按鈕。 CustomControlTitle具有基於CustomControlBody中單選按鈕的值的計算字段。
如果CustomControlTitle放在CustomControlBody中,那麼CustomControlTitle中的計算字段可以很好地看到CustomControlBody上的單選按鈕的值。
但爲了設計的靈活性,我希望能夠將CustomControlTitle和CustomControlBody分別放置在xPage上。但是當我這樣做時,CustomControlTitle似乎無法看到CustomControlBody中的單選按鈕。
如何將CustomControlBody中的單選按鈕的值傳遞給CustomControlTitle中的計算字段?
感謝。聽起來像是viewScope是要走的路。我不知道爲什麼我沒有想到這一點。:)你可以在自定義控件上設置屬性。能夠從它們動態獲取值將是很好的。 – 2012-03-14 19:23:10
Bruce將傳遞給自定義控件的屬性存儲在屬性圖中。所以只要CC有一個ID,你應該能夠訪問傳遞給它的任何屬性: getComponent(「customControlId」)。getPropertyMap()。get(「propertyName」) – 2012-03-14 19:49:41
如果屬性值的toString來作爲對ValueBindingImpl的引用(例如[email protected]),這意味着該屬性是動態確定的,因此您需要稍微更復雜的表達式來獲取值: getComponent (「customControlId」)。getPropertyMap()。get(「propertyName」)。getValue(facesContext) – 2012-03-14 19:52:51