大家好,请问Flex4.5 的DataGrid怎么才能交换列的位置(拖动) spark.components.DataGrid

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了大家好,请问Flex4.5 的DataGrid怎么才能交换列的位置(拖动) spark.components.DataGrid相关的知识,希望对你有一定的参考价值。

参考技术A DataSource是受保护只读的!
你们是读取不到的!
只能新建一个datatable,然后创建列!然后在往里面添加数据!

DataTable dt = new DataTable("tablename");
DataRow dr;

dt.Columns.Add("客户名", System.Type.GetType("System.String"));
dt.Columns.Add("客户电话", System.Type.GetType("System.String"));
dt.Columns.Add("客户邮编", System.Type.GetType("System.String"));
dt.Columns.Add("客户地址", System.Type.GetType("System.String"));
dt.Columns.Add("备注", System.Type.GetType("System.String"));
for (int i = 0; i <this.dataGridView1.Rows.Count; i++)

dr = dt.NewRow();
for (int j = 0;j <= 5; j++)

dr[j] = this.dataGridView1.Rows[i].Cells[j].alue.ToString();

dt.Rows.Add(dr);


DataSet selectds = new DataSet();
数据集.Tables.Add(dt);

//这样就好勒!
参考技术B draggableColumns我不知道4.5 datagrid有没有这个属性, 设为true就可以拖动了追问

你好,4.5的datagrid确实没有draggableColumns属性!

追答

默认不是可拖动的吗? 那你可能得查下google了,我用的是mx的datagrid里面有这个属性的,而且默认是可以拖动的。 4.5的spark datagrid 主要是让开发者自己定制,所以你可能需要查查看看怎么去定制了,我也没用过

参考技术C

根据flex中的arraycollection数据过滤datagrid

【中文标题】根据flex中的arraycollection数据过滤datagrid【英文标题】:Filter datagrid based on arraycollection data in flex 【发布时间】:2015-03-17 01:39:16 【问题描述】:

我有

    一个名为 ordersAC 的数组集合,其中包含 orderId 等动态数据。 另一个数组集合是数据网格的数据提供者,称为 ordersRecordAC,包含(orderId、orderTitle、orderDescription、价格)。

DataGrid 包含 4 列:

No.   OrderTitle   OrderDescription   Price

现在,DataGrid 有 100 条记录。我想使用每次动态更改的第一个 arraycollection(ordersAC) 过滤 DataGrid。

like: ordersAC 有 5 个 orderId 1521, 2154, 2233, 5484, 2351

那么在 DataGrid 中只显示 5 条记录依赖于orderId

我尝试了以下方法但没有奏效:

private function onSearchRecordClick(event:FlexEvent):void

    var orderAC:ArrayCollection = ordersGridId.orderAC;
    for(var i:int = 0; i<ordersRecordAC.length-1;i++)
    
        orderAC.filterFunction = filterRows; 

        function filterRows(item1:Object):Boolean 
        
            if(item1.orderId == ordersRecordAC[i])
                return true;
            else
                return false;
        
    
    orderAC.refresh();


<mx:DataGrid id="ordersGridId" lockedColumnCount="5" dataProvider="orderAC" sortableColumns="true">

希望能理解我的问题。

谢谢。

【问题讨论】:

【参考方案1】:

我会使用您的代码执行以下操作。

private var orderAC:ArrayCollection; // assign this somewhere else

private function onSearchRecordClick(event:FlexEvent):void

  if(!orderAC.filterFunction)
    orderAC.filterFunction = filterRows; 
  orderAC.refresh();


private function filterRows(item1:Object):Boolean 

  for(var i:int = 0;i < ordersRecordAC.length;i++)
  
    if(item1.orderId == ordersRecordAC[i])
      return true;
  
  return false;

【讨论】:

以上是关于大家好,请问Flex4.5 的DataGrid怎么才能交换列的位置(拖动) spark.components.DataGrid的主要内容,如果未能解决你的问题,请参考以下文章

Flex 4.5:带有自定义 ItemRenderes 的 Spark DataGrid

在应用程序的 creationComplete (Flex 4.5) 上设置 Spark DataGrid 列的默认排序

WPF中,我使用了datagrid,我想请问下当我向数据库添加了新的数据,我该怎么刷新datagrid里面的数据?

大家好,请问一下在android程序中怎么取消全屏?

您好,,我想请问一下C# datagrid控件 是怎么改变行背景色的??

请问easyui datagrid的表头与内容会错位你是怎么解决的