Ⅰ Flex datagrid單元格中綁定的數據過長怎樣處理
我記得datagrid的單元格有自動截取的吧,如果沒有的話,那隻能通過labelFunction和itemRenderer來改寫你的單元格顯示形式。
Ⅱ Flex DataGrid中如何根據數據值的不同而改變其顯示效果
data.parent='0'
這里是要用==才是判斷的
Ⅲ flex DataGrid里的datafield屬性
用itemRenderer實現.
<mx:itemRenderer>
<mx:Component>
<mx:label text="{roles[0].name}"/>
<mx:/Component>
<mx:/itemRenderer>
不能直接用roles[0].name表示.你可以內試容試arrCollection[i].roles[0].name
Ⅳ Flex中DataGrid怎麼取得xml中的數據並綁定……
<?xml version="1.0"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:Script>
<![CDATA[
//////////////////////////////////////////////////////////////
// DataGrid
//
// editable ="false|" *表格是否可編輯
// draggableColumns= "true|false" *列是否能抓取
// resizableColumns= "true|false" *列是否能重設大小
// sortableColumns = "true|false" *列是否能按大小排序
//
// AdvancedDataGrid
// sortExpertMode ="false|true" *是否可以按ctrl鍵進行子排序
//
//////////////////////////////////////////////////////////////
]]>
</mx:Script>
<mx:XMLList id="employees">
<employee>
<name>ABC</name>
<phone>001</phone>
<email>b</email>
<active>true</active>
</employee>
<employee>
<name>A</name>
<phone>002</phone>
<email>a</email>
<active>true</active>
</employee>
<employee>
<name>B</name>
<phone>001</phone>
<email>b</email>
<active>false</active>
</employee>
<employee>
<name>B</name>
<phone>002</phone>
<email>a</email>
<active>true</active>
</employee>
</mx:XMLList>
<mx:Panel title="DataGrid Control Example" height="100%" width="100%"
paddingTop="10" paddingLeft="10" paddingRight="10">
<mx:Label width="100%" color="blue"
text="Select a row in the DataGrid control."/>
<!-- DataGrid -->
<mx:DataGrid id="dg" rowCount="5" dataProvider="{employees}"
editable="true" dragEnabled="true" resizableColumns="true" sortableColumns="true" allowMultipleSelection="true">
<mx:columns>
<mx:DataGridColumn dataField="name" headerText="Name" editable="false" />
<mx:DataGridColumn dataField="phone" headerText="Phone" draggable="false" editable="true"/>
<mx:DataGridColumn dataField="email" headerText="Email" sortable="false"/>
</mx:columns>
</mx:DataGrid>
<!-- AdvancedDataGrid -->
<mx:AdvancedDataGrid id="dg2" width="100%" height="100%" rowCount="5" dataProvider="{employees}"
editable="false" dragEnabled="true" resizableColumns="true" sortableColumns="true" sortExpertMode="true" >
<mx:columns>
<mx:AdvancedDataGridColumn dataField="name" headerText="Name" editable="false"/>
<mx:AdvancedDataGridColumn dataField="phone" headerText="Phone" draggable="false"/>
<mx:AdvancedDataGridColumn dataField="email" headerText="Email" sortable="true"/>
</mx:columns>
</mx:AdvancedDataGrid>
<!-- 表格數據綁定 -->
<mx:Form width="100%" height="100%">
<mx:FormItem label="Name">
<mx:Label text="{dg.selectedItem.name}"/>
</mx:FormItem>
<mx:FormItem label="Email">
<mx:Label text="{dg.selectedItem.email}"/>
</mx:FormItem>
<mx:FormItem label="Phone">
<mx:Label text="{dg.selectedItem.phone}"/>
</mx:FormItem>
</mx:Form>
</mx:Panel>
</mx:Application>
Ⅳ flex 4中datagrid如何根據某一列的值來設定另一列的數據顯示顏色
在監測值 那裡寫一個itemRenderer;如這樣的:
<s:GridColumn headerText="監測值" sortable="false" fontSize="18" itemRenderer="com.GriditemRender" />
itemRenderer裡面就是這樣的:
<?xml version="1.0" encoding="utf-8"?>
<mx:Canvas xmlns:fx="http://ns.adobe.com/mxml/2009" width="100%" height="100%"
xmlns:s="library://ns.adobe.com/flex/spark" horizontalScrollPolicy="off" verticalScrollPolicy="off"
xmlns:mx="library://ns.adobe.com/flex/mx" >
<fx:Declarations>
<!-- 將非可視元素(例如服務、值對象)放在此處 -->
</fx:Declarations>
<fx:Script>
<![CDATA[
override public function set data(value:Object):void{
super.data=value;
//這個地方你需要判斷下value.value這個是否為int類型的值。不是的就轉化一下然後判斷
if(value.value > 3){
lb.text = value.value;
lb.setStyle("color",'#ff0000');
}else{
lb.text = value.value;
lb.setStyle("color",'#ffffff');
}
}
]]>
</fx:Script>
<mx:Label id="lb" verticalCenter="0" horizontalCenter="0" />
</mx:Canvas>
Ⅵ Flex Datagrid中,如何自定義排序的方式
在使用的時候,會遇到把表示的數據排序的時候,但是,有時候,不想用DataGrid自帶的排序時,可以用如下的方法來自定義自己想要的排序方法。 自定義排序方法如下,需要自己手動寫一段排序的方法,在這個方法里,定義你的排序方式,然後,只要把這個方法應用到Datagrid的某一列就好了。 1、自定義的排序方法 private function sortStudentId(itemA:Object, itemB:Object):int { var dataA:int = int(itemA.student_id); var dataB:int = int(itemB.student_id); return ObjectUtil.compare(dataA, dataB);}2、把定義好的排序方法載入到Datagrid中 <mx:DataGrid id="dg" height="100%" width="100%" dataProvider="{studentList}" <mx:columns <mx:DataGridColumn sortable="true" sortCompareFunction="sortStudentId" headerText="學號" dataField="student_id" width="50" itemMode="number"/ </mx:columns 另外,ObjectUtil的使用,需要import進來, import mx.utils.ObjectUtil;
Ⅶ flex 獲取DataGridColumn列表的值
使用[]來取屬性值,另外ac取某一項最好不要用[],而是用getItemAt(i)方法:ac.getItemAt(i)[ID]
Ⅷ Flex中DataGrid數據顯示不全問題
你是說字元太多超過了列寬吧。
標準的做法就是超出的部分用省略號,滑鼠mouse over上去出現tips.
Ⅸ flex DataGrid自動排序(非點擊)
這個控制項我也經常用,一般做法都是在資料庫中通過order by 消費日期,然後把數據返還到前台,日期就自動排序了。datagrid的排序或過濾要觸發事件。
Ⅹ flex datagrid修改行數據後 數據刷新後 修改後的數據行獲取焦點(例如:該數據所在行顏色變深)
先把修改前的selectedIndex記下來,刷新後,再把記下的索引賦值給datagrid.selectedIndex