如何在cascade Blackberry中从listview中获取值
我只是想从列表视图中获取所选内容的值,并将其传递到下一个屏幕(第页)。但我不能像它显示的那样做 asset:///main.qml:25: TypeError:表达式“dataModel.model”[undefined]的结果不是函数 我下面的代码如下 这是我的main.qml的代码如何在cascade Blackberry中从listview中获取值,listview,blackberry-10,cascade,Listview,Blackberry 10,Cascade,我只是想从列表视图中获取所选内容的值,并将其传递到下一个屏幕(第页)。但我不能像它显示的那样做 asset:///main.qml:25: TypeError:表达式“dataModel.model”[undefined]的结果不是函数 我下面的代码如下 这是我的main.qml的代码 NavigationPane { id:navi Page { Container { background: Color.Transparent topM
NavigationPane
{
id:navi
Page
{
Container
{
background: Color.Transparent
topMargin:2.0
TextField {
id: lb1
text:""
}
ListView
{
topMargin: 2.0
dataModel: XmlDataModel { source: "model.xml" }
onTriggered: {
console.log("onTriggered");
// Retrieve the selected item
var selectedItem = dataModel.data(indexPath);
lb1.text = selectedItem.status;
pushed.lb2.text="You Selected :" + lb1.text;
navi.push(pushed)
}
}
}
}
attachedObjects: [
Page2 {
id: pushed
}
]
}
这段代码是我的第二页Page2.qml的代码,我想从main.qml中检索信息
import bb.cascades 1.0
Page {
property alias lb2: lb2
Container {
horizontalAlignment: HorizontalAlignment.Center
Label {
id:lb2
horizontalAlignment: HorizontalAlignment.Center
verticalAlignment: VerticalAlignment.Center
text: "You Selected :" + lb1
}
}
}
我是新来的。您可以在触发器上获得模型的当前项,如下代码所示
onTriggered: {
var selectedItem = dataModel.data(indexPath);
textField.text = selectedItem.status;
}
你可以从中学到更多
更新:
您必须为将数据从一页传递到另一页设置别名
你的错误中有一些问题
1) 删除OnTiggerd中下一行中的文本
pushed.lb2 ="You Selected :" + lb1.text;
2) 正确设置别名
property alias lb2: lb2.text
您是否有导入bb.data 1.0的
?@bojankogj yep。。我已经导入了它。我尝试了你的代码,但是页面正在翻译,没有显示值。我已经编辑了代码,请看一下。