我正在尝试在 mx:AdvancedDataGridColumn 列中显示特殊字符作为值。例如,我试图用HTML代码显示复制权符号,商标和其他字符。
我想显示以下数据
特殊字符:¢©®™
以下html编码内容:
& lt; b& gt;特殊字符:& lt; / b& gt; &安培;分; &放大器;复制;&安培; REG; &安培;贸易;
截至目前, mx:AdvancedDataGridColumn 按原样显示数据。即显示标签(HTML编码的字符串)
示例代码: < mx:AdvancedDataGridColumn dataField =“htmlContent”>
这里HTML可以是任何东西。请提供如何执行此操作。
答案 0 :(得分:1)
默认情况下,当您指定dataField属性时,Flex将尝试设置" text"默认AdvancedDataGridItemRenderer(它是TextField)的属性。为了显示html,您需要创建一个自定义项目渲染器,扩展AdvancedDataGridItemRenderer,并覆盖"设置数据"函数,然后设置htmlText属性。
另见http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/text/TextField.html#htmlText,不支持某些HTML实体。
答案 1 :(得分:0)
我将Delta符号设置为DataGrid的列标题,如此
<s:DataGrid width="100%" height="100%" rowHeight="43"
sortableColumns="false"
color="0x929698"
borderVisible="false"
dataProvider="{model.gridOperationDataCollection}">
<s:columns>
<s:ArrayList>
<s:GridColumn> headerRenderer="ru.prognoz.iup.renderers.OperationIndGridHRDelta"/>
</s:ArrayList>
</s:columns>
OperationIndGridHRDelta
<s:GridItemRenderer xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx"
minWidth="21" minHeight="21">
<mx:Text htmlText="\u0394 {label}"
color="0xA2ACB2"
verticalCenter="0" horizontalCenter="0"
fontSize="12" fontFamily="Arial"
/>