Loading ...
Sorry, an error occurred while loading the content.

Re: [flexcoders] datagrid not rendering after dataprovider update

Expand Messages
  • Wouter Schreuders
    Hi Alex To replicate the problem. - launch the app (it will populate the datagrid with values) - choose a different date in the date picker on the top left -
    Message 1 of 12 , Apr 26 1:00 AM
    View Source
    • 0 Attachment
      Hi Alex

      To replicate the problem.

      - launch the app (it will populate the datagrid with values)

      - choose a different date in the date picker on the top left

      - the dataprovider will get updated but the datagrid doesn't update properly, instead it just remains blank

      - use the scroller on the right-hand side to scroll through the datagrid, the datagrid will then render properly

      Thanks

      Wouter

      On 26 April 2012 08:37, Alex Harui <aharui@...> wrote:
       

      What are the steps to reproduce the problem?




      On 4/20/12 12:54 AM, "Wouter Schreuders" <wschreuders@...> wrote:


       
       
         

      I've made a simple test case in which I can replicate the problem. If anyone feels like having a look you can download it here:

      http://www.filefactory.com/file/6oz4m4wrkx31/n/DataGridRender_zip



      On 4 April 2012 23:12, Alex Harui <aharui@...> wrote:
       
       
       
         

      Do you have a simple test case?




      On 4/4/12 8:43 AM, "Wouter Schreuders" <wschreuders@... <http://wschreuders@...> > wrote:


       
       
         

      spark DG


      On 4 April 2012 17:28, Alex Harui <aharui@... <http://aharui@...> > wrote:
       
       
       
         

      MX or Spark DG?






      On 4/4/12 12:05 AM, "Wouter Schreuders" <wschreuders@... <http://wschreuders@...>  <http://wschreuders@...> > wrote:


       
       
         

      I thought that that may be the case, so I removed all my custom itemrenderers but the problem remains, I've also noticed that the problem only occurs after I have entered a date range, if I stick with the standard date range then problem doesn't occur.

      On 3 April 2012 22:23, Alex Harui <aharui@... <http://aharui@...>  <http://aharui@...> > wrote:
       
       
       
         

      That sounds more like an issue with custom renderers.




      On 4/3/12 4:47 AM, "Wouter Schreuders" <wschreuders@... <http://wschreuders@...>  <http://wschreuders@...>  <http://wschreuders@...> > wrote:


       
       
         

      Hi All

      I've run into a rendering problem with the datagrid.

      I have a datagrid that a user can search using a date range, furthermore the user can also search using keywords. I do this by first looking at the date range and applying a filter to the array of objects based on the dates. Then I make of a copy of that arraycollection and assign the arraycollection which binds to my datagrid to that collection.

      The problem is that when the user selects a date range and I apply the filter, the datagrid content disappears. The scrollbar on the side updates though and if I scroll down then the content appears and renders correctly. I've tried the following post refresh commands but none of them solve the problem.

      (datagrid.dataProvider as ArrayCollection).refresh();
      datagrid .invalidateSkinState();
      datagrid .invalidateDisplayList();
      datagrid .validateNow();

      Here's the code where I get the date range.

      var dateFilteredArray:Array = _transactions.source.filter(
      function (item:Transaction, index:int, array:Array):Boolean
      {
      if(Date.parse(item.displayDate) < dateRangeComponent.startDate.valueOf() || Date.parse(item.displayDate) > dateRangeComponent.endDate.valueOf())
      return false
      else
      return true //item is inside date range
      }
      );
      _dateFilteredCollection = new ArrayCollection(dateFilteredArray);

      Anyone run into this before?
       
         



      --
      Alex Harui
      Flex SDK Team
      Adobe Systems, Inc.
      http://blogs.adobe.com/aharui


    • Alex H
      Looks like there are a couple of bugs in there. File the bugs against Adobe if you have an Adobe support contract, otherwise file against Apache Flex. I used
      Message 2 of 12 , Apr 27 11:34 PM
      View Source
      • 0 Attachment
        Looks like there are a couple of bugs in there. File the bugs against Adobe if you have an Adobe support contract, otherwise file against Apache Flex.

        I used the following hack in applyDateFilter that appears to work. If you don't change the scrollposition, it doesn't cause a full update of the screen.


        var oldvsp:Number = dgTransactions.grid.verticalScrollPosition;
        _dateFilteredCollection = new ArrayCollection(dateFilteredArray);
        applySort();
        applySearch();
        dgTransactions.grid.verticalScrollPosition = oldvsp + .1;
        dgTransactions.grid.verticalScrollPosition = oldvsp;

        -Alex



        --- In flexcoders@yahoogroups.com, Wouter Schreuders <wschreuders@...> wrote:
        >
        > Hi Alex
        >
        > To replicate the problem.
        >
        > - launch the app (it will populate the datagrid with values)
        >
        > - choose a different date in the date picker on the top left
        >
        > - the dataprovider will get updated but the datagrid doesn't update
        > properly, instead it just remains blank
        >
        > - use the scroller on the right-hand side to scroll through the datagrid,
        > the datagrid will then render properly
        >
        > Thanks
        >
        > Wouter
        >
        > On 26 April 2012 08:37, Alex Harui <aharui@...> wrote:
        >
        > > **
        > >
        > >
        > > What are the steps to reproduce the problem?
        > >
        > >
        > >
        > > On 4/20/12 12:54 AM, "Wouter Schreuders" <wschreuders@...> wrote:
        > >
        > >
        > >
        > >
        > >
        > >
        > > I've made a simple test case in which I can replicate the problem. If
        > > anyone feels like having a look you can download it here:
        > >
        > > http://www.filefactory.com/file/6oz4m4wrkx31/n/DataGridRender_zip
        > >
        > >
        > >
        > > On 4 April 2012 23:12, Alex Harui <aharui@...> wrote:
        > >
        > >
        > >
        > >
        > >
        > >
        > > Do you have a simple test case?
        > >
        > >
        > >
        > >
        > > On 4/4/12 8:43 AM, "Wouter Schreuders" <wschreuders@... <
        > > http://wschreuders@...> > wrote:
        > >
        > >
        > >
        > >
        > >
        > >
        > > spark DG
        > >
        > >
        > > On 4 April 2012 17:28, Alex Harui <aharui@... <
        > > http://aharui@...> > wrote:
        > >
        > >
        > >
        > >
        > >
        > >
        > > MX or Spark DG?
        > >
        > >
        > >
        > >
        > >
        > >
        > > On 4/4/12 12:05 AM, "Wouter Schreuders" <wschreuders@... <
        > > http://wschreuders@...> <http://wschreuders@...> > wrote:
        > >
        > >
        > >
        > >
        > >
        > >
        > > I thought that that may be the case, so I removed all my custom
        > > itemrenderers but the problem remains, I've also noticed that the problem
        > > only occurs after I have entered a date range, if I stick with the standard
        > > date range then problem doesn't occur.
        > >
        > > On 3 April 2012 22:23, Alex Harui <aharui@... <
        > > http://aharui@...> <http://aharui@...> > wrote:
        > >
        > >
        > >
        > >
        > >
        > >
        > > That sounds more like an issue with custom renderers.
        > >
        > >
        > >
        > >
        > > On 4/3/12 4:47 AM, "Wouter Schreuders" <wschreuders@... <
        > > http://wschreuders@...> <http://wschreuders@...> <
        > > http://wschreuders@...> > wrote:
        > >
        > >
        > >
        > >
        > >
        > >
        > > Hi All
        > >
        > > I've run into a rendering problem with the datagrid.
        > >
        > > I have a datagrid that a user can search using a date range, furthermore
        > > the user can also search using keywords. I do this by first looking at the
        > > date range and applying a filter to the array of objects based on the
        > > dates. Then I make of a copy of that arraycollection and assign the
        > > arraycollection which binds to my datagrid to that collection.
        > >
        > > The problem is that when the user selects a date range and I apply the
        > > filter, the datagrid content disappears. The scrollbar on the side updates
        > > though and if I scroll down then the content appears and renders correctly.
        > > I've tried the following post refresh commands but none of them solve the
        > > problem.
        > >
        > > (datagrid.dataProvider as ArrayCollection).refresh();
        > > datagrid .invalidateSkinState();
        > > datagrid .invalidateDisplayList();
        > > datagrid .validateNow();
        > >
        > > Here's the code where I get the date range.
        > >
        > > var dateFilteredArray:Array = _transactions.source.filter(
        > > function (item:Transaction, index:int, array:Array):Boolean
        > > {
        > > if(Date.parse(item.displayDate) < dateRangeComponent.startDate.valueOf()
        > > || Date.parse(item.displayDate) > dateRangeComponent.endDate.valueOf())
        > > return false
        > > else
        > > return true //item is inside date range
        > > }
        > > );
        > > _dateFilteredCollection = new ArrayCollection(dateFilteredArray);
        > >
        > > Anyone run into this before?
        > >
        > >
        > >
        > >
        > >
        > > --
        > > Alex Harui
        > > Flex SDK Team
        > > Adobe Systems, Inc.
        > > http://blogs.adobe.com/aharui
        > >
        > >
        > >
        >
      • Wouter Schreuders
        Thanks Alex Your workaround works perfectly, I ve filed the bug here : http://bugs.adobe.com/jira/browse/SDK-32172 Thanks again Wouter
        Message 3 of 12 , May 3, 2012
        View Source
        • 0 Attachment
          Thanks Alex

          Your workaround works perfectly, 


          Thanks again

          Wouter

          On 28 April 2012 08:34, Alex H <aharui@...> wrote:
           

          Looks like there are a couple of bugs in there. File the bugs against Adobe if you have an Adobe support contract, otherwise file against Apache Flex.

          I used the following hack in applyDateFilter that appears to work. If you don't change the scrollposition, it doesn't cause a full update of the screen.

          var oldvsp:Number = dgTransactions.grid.verticalScrollPosition;
          _dateFilteredCollection = new ArrayCollection(dateFilteredArray);
          applySort();
          applySearch();
          dgTransactions.grid.verticalScrollPosition = oldvsp + .1;
          dgTransactions.grid.verticalScrollPosition = oldvsp;

          -Alex



          --- In flexcoders@yahoogroups.com, Wouter Schreuders <wschreuders@...> wrote:
          >
          > Hi Alex
          >
          > To replicate the problem.
          >
          > - launch the app (it will populate the datagrid with values)
          >
          > - choose a different date in the date picker on the top left
          >
          > - the dataprovider will get updated but the datagrid doesn't update
          > properly, instead it just remains blank
          >
          > - use the scroller on the right-hand side to scroll through the datagrid,
          > the datagrid will then render properly
          >
          > Thanks
          >
          > Wouter
          >
          > On 26 April 2012 08:37, Alex Harui <aharui@...> wrote:
          >
          > > **

          > >
          > >
          > > What are the steps to reproduce the problem?
          > >
          > >
          > >
          > > On 4/20/12 12:54 AM, "Wouter Schreuders" <wschreuders@...> wrote:
          > >
          > >
          > >
          > >
          > >
          > >
          > > I've made a simple test case in which I can replicate the problem. If
          > > anyone feels like having a look you can download it here:
          > >
          > > http://www.filefactory.com/file/6oz4m4wrkx31/n/DataGridRender_zip
          > >
          > >
          > >
          > > On 4 April 2012 23:12, Alex Harui <aharui@...> wrote:
          > >
          > >
          > >
          > >
          > >
          > >
          > > Do you have a simple test case?
          > >
          > >
          > >
          > >
          > > On 4/4/12 8:43 AM, "Wouter Schreuders" <wschreuders@... <

          > > http://wschreuders@...> > wrote:
          > >
          > >
          > >
          > >
          > >
          > >
          > > spark DG
          > >
          > >
          > > On 4 April 2012 17:28, Alex Harui <aharui@... <

          > > http://aharui@...> > wrote:
          > >
          > >
          > >
          > >
          > >
          > >
          > > MX or Spark DG?
          > >
          > >
          > >
          > >
          > >
          > >
          > > On 4/4/12 12:05 AM, "Wouter Schreuders" <wschreuders@... <

          > > http://wschreuders@...> <http://wschreuders@...> > wrote:
          > >
          > >
          > >
          > >
          > >
          > >
          > > I thought that that may be the case, so I removed all my custom
          > > itemrenderers but the problem remains, I've also noticed that the problem
          > > only occurs after I have entered a date range, if I stick with the standard
          > > date range then problem doesn't occur.
          > >
          > > On 3 April 2012 22:23, Alex Harui <aharui@... <

          > > http://aharui@...> <http://aharui@...> > wrote:
          > >
          > >
          > >
          > >
          > >
          > >
          > > That sounds more like an issue with custom renderers.
          > >
          > >
          > >
          > >
          > > On 4/3/12 4:47 AM, "Wouter Schreuders" <wschreuders@... <
          > > http://wschreuders@...> <http://wschreuders@...> <

          > > http://wschreuders@...> > wrote:
          > >
          > >
          > >
          > >
          > >
          > >
          > > Hi All
          > >
          > > I've run into a rendering problem with the datagrid.
          > >
          > > I have a datagrid that a user can search using a date range, furthermore
          > > the user can also search using keywords. I do this by first looking at the
          > > date range and applying a filter to the array of objects based on the
          > > dates. Then I make of a copy of that arraycollection and assign the
          > > arraycollection which binds to my datagrid to that collection.
          > >
          > > The problem is that when the user selects a date range and I apply the
          > > filter, the datagrid content disappears. The scrollbar on the side updates
          > > though and if I scroll down then the content appears and renders correctly.
          > > I've tried the following post refresh commands but none of them solve the
          > > problem.
          > >
          > > (datagrid.dataProvider as ArrayCollection).refresh();
          > > datagrid .invalidateSkinState();
          > > datagrid .invalidateDisplayList();
          > > datagrid .validateNow();
          > >
          > > Here's the code where I get the date range.
          > >
          > > var dateFilteredArray:Array = _transactions.source.filter(
          > > function (item:Transaction, index:int, array:Array):Boolean
          > > {
          > > if(Date.parse(item.displayDate) < dateRangeComponent.startDate.valueOf()
          > > || Date.parse(item.displayDate) > dateRangeComponent.endDate.valueOf())
          > > return false
          > > else
          > > return true //item is inside date range
          > > }
          > > );
          > > _dateFilteredCollection = new ArrayCollection(dateFilteredArray);
          > >
          > > Anyone run into this before?
          > >
          > >
          > >
          > >
          > >
          > > --
          > > Alex Harui
          > > Flex SDK Team
          > > Adobe Systems, Inc.
          > > http://blogs.adobe.com/aharui
          > >
          > >
          > >
          >


        Your message has been successfully submitted and would be delivered to recipients shortly.