2015-04-01 73 views
3

我正在使用SAPUI5和OpenUI5。 I'ved開發了一些自定義的控件,但現在從未使用2-Way的數據綁定此控件......我已經與SAPUI5/OpenUI5自定義控件的數據綁定

oMyControl.bindProperty("someValue", "oModel>/testBindingValue")

我所看到的是試了一下:當觀看示範調試現場aBindings有一個條目:

sPath: "/testBindingValue" 
sInternalType: "int" 

和我的控件屬性類型的正確sInternalType(在這種情況下,「INT」)。

但是,當我在看陣列oModel.oData它是空的,oModel.getProperty("/testBindingValue") 也返回undefined ...但我絕對的控制對「someValue中值爲」 ......所以,沒有任何人有一個想法?

謝謝, 亞歷克斯

UPDATE:

這裏你可以看到我的工作流程:

首先創建模型:

var oModel = new sap.ui.model.json.JSONModel(); 
    sap.ui.getCore().setModel(oModel, 'oModel'); 

然後初始化我控制:

var oMyControl = new MyControl({ 
    someValue: "Test Value of the Control" 
}); 
oMyControl.bindProperty("someValue", "oModel>/testValue"); 

現在,當我做:

alert(oModel.getProperty("/testValue")); 

我會得到 「未定義」。

所以,我猜這是工作,對於「價值」,「文本」,「可見」或「已啓用」等正常對照..

+0

如果您可以使用某些語法突出顯示來區分代碼和問題文本,這將會很有幫助。 – UpAndAdam 2015-04-01 15:30:42

+0

你確定綁定建立正確嗎? oModel>/testBindingValue的初始值是什麼?你的控制是否顯示正確的數值? – cschuff 2015-04-02 07:05:26

+0

您的新自定義控件是SAP控制權嗎?你能發佈MyControl構造函數的代碼嗎? – 2015-04-03 02:41:09

回答

1

有東西在你的自定義控件這是不正確的工作。我創建了一個我理解你正在做的事情的例子(http://jsbin.com/kiwoza/2/edit?html,console,output),它似乎按我的預期工作。如果此示例與您嘗試完成的操作有所不同,請更新問題,詳細說明爲什麼它不太正確。

+0

嗨,感謝您的回覆......但我講的是自定義控件,而不是一般的數據綁定。對於使用'普通'SAPUI5控件的雙向數據綁定,我完全沒有問題。 – 2015-05-07 20:36:38