从组合中灵活选择值
我的目标是创建一个通用函数,根据值选择组合框中的值。 (我的 comoBox 将 arrayCollection 作为 dataProvider。)
事实上,困难在于在运行时模式下获取属性名称
public function selectComboByLabel(combo:ComboBox , propetryName:String, value:String):void {
var dp:ArrayCollection = combo.dataProvider as ArrayCollection;
for (var i:int=0;i<dp.length;i++) {
if (dp.getItemAt(i).propertyName==value) {
combo.selectedIndex = i;
return;
}
}
}
if (dp.getItemAt(i).propertyName==value) 当然是不正确的。 它应该是类似的东西: dp.getItemAt(i).getPropertyByName(propertyName)
关于如何做到这一点的任何线索?
My goal is to create a generic function that selects a value in a combobox accoring to a value.
(My comoBox holds arrayCollection as dataProvider.)
The difficulty is infact to get a propertyname in runtime mode
public function selectComboByLabel(combo:ComboBox , propetryName:String, value:String):void {
var dp:ArrayCollection = combo.dataProvider as ArrayCollection;
for (var i:int=0;i<dp.length;i++) {
if (dp.getItemAt(i).propertyName==value) {
combo.selectedIndex = i;
return;
}
}
}
the line if (dp.getItemAt(i).propertyName==value)
is of course incorrect.
It should be arther something like: dp.getItemAt(i).getPropertyByName(propertyName)
Any clue on how to that ?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
不要使用对象属性表示法。这样做:
Don't use Object Property notation. Do this:
除了 Flextras 所说的之外,您还可以重做
for
循环以使其更易于阅读:In addition to what Flextras said, you could also redo your
for
loop to make it easier to read: