2015-04-01 75 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