1
如果数据提供者包含2个具有相同值({“A”,“A”,“B”})的数据网格和数据提供者,当您将鼠标悬停在包含“A”的任何行上时, “也将突出显示。Flex DataGrid/DataProvider错误?
其他人注意到这个问题?
如果数据提供者包含2个具有相同值({“A”,“A”,“B”})的数据网格和数据提供者,当您将鼠标悬停在包含“A”的任何行上时, “也将突出显示。Flex DataGrid/DataProvider错误?
其他人注意到这个问题?
Whydna你在正确的轨道上与你分享的帖子http://jonathanbranam.net/solutions/datagrid-highlights-wrong-row。这是令人困惑的flash/flex的原因是,datagrid使用相等性来确定它何时找到匹配的行。这可以通过修改框架来使用严格平等(===)来解决,但现在更好的答案是按照该帖子建议并将您的值包装在对象中,以避免此问题的风险。如果您添加了几个相同的对象,您也会看到相同的行为,如链接中的示例所示。这是一个可行的例子,以确保你有你需要的东西。
<mx:DataGrid id="dataGrid" dataProvider="{gridData}" creationComplete="init()">
<mx:columns>
<mx:DataGridColumn dataField="title" headerText="Title" />
</mx:columns>
</mx:DataGrid>
<mx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
[Bindable] private var gridData:ArrayCollection;
protected function init():void
{
gridData = new ArrayCollection();
for(var i:uint = 0; i < 10; i++)
{
gridData.addItem({title: "This is an item"});
}
}
]]>
</mx:Script>
我从来没有见过这样的事情。你的代码是什么样的? – wajiw 2010-11-23 18:14:46