【问题标题】:Providing values to components in a dataGrid为 dataGrid 中的组件提供值
【发布时间】:2010-11-10 00:47:16
【问题描述】:

我有以下内容。 :

mx:DataGridColumn width="125" headerText="Time" editable="false" mx:itemRenderer mx:组件 mx:H框 mx:NumericStepper id="TimeHour" stepSize="1" minimum="0" value="0" maximum="23"/ mx:NumericStepper id="TimeMinute" stepSize="5" minimum="0" value="0" maximum="55"/ /mx:H框 /mx:组件 /mx:item 渲染器 /mx:数据网格列

如何将数据提供者(对象数组)中的值提供给这些单独的数字步进器。 dataField 似乎不能在 NumericStepper 标记中提及。

帮助。

P.N :忽略 mxml 的开始标记和结束 tgs。问题显示不正确。

【问题讨论】:

    标签: apache-flex datagrid components dataprovider numericstepper


    【解决方案1】:

    如果我没记错的话,您可以像这样访问数据:

    【讨论】:

    • 好的...有一件事,这里是“yourObject”。是不是直接就是我的dataprovider名字的参数名。如果我直接给出参数名称,它会说无法绑定到参数,尽管声明可绑定。
    • 它应该是 yourValue,我已经编辑了我的原始评论。 data 是数组中的当前对象,因此 yourValue 是该对象的属性。
    • 我尝试了上述方法。它说警告:无法绑定到类 'utils::TimeDO' 上的属性 'TimeHour'
    • 这是一个相当常见的警告,不应影响代码的结果。 bugs.adobe.com/jira/browse/SDK-13814
    【解决方案2】:

    不应永远忽略绑定警告。他们告诉您,您尝试在运行时使用的属性实际上是可绑定的,对其值的更改将不会传播,即您不会在视图中看到对数据的更改。由于 itemRenderers 实例被回收,因此它们的数据属性会随着用户滚动列表、网格等而反复更改。你基本上不会得到你想要的。

    您必须在这里做几件事。首先,确保 ArrayCollection 中您提供给网格的对象本身是 [Bindable] 或至少要显示的属性是 [Bindable]。

    其次,我猜您希望步进器实例也修改这些值。您应该阅读标题为“创建项目渲染器和项目编辑器”的文档部分,了解您正在尝试执行的操作的示例。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-06-11
      • 1970-01-01
      • 1970-01-01
      • 2019-01-24
      • 2018-07-30
      • 2018-08-23
      • 1970-01-01
      相关资源
      最近更新 更多