Ticket T291954
Visible to All Users
Duplicate

ImmediatePostData - Immediate refresh of other row

created 9 years ago

Hello,

we added the controller supposed by Dennis (S30324) to  support immediatePostData with on ListViews.
It all works fine for the focused row. Our problem is, that other rows don't refresh as long as the propertyEditor wasn't changed.
You can reproduce this behavior with the attached solution. There's a video included in the zip-file.

Best regards and thank you for your help

Christian

Answers approved by DevExpress Support

created 9 years ago (modified 9 years ago)

Hello Christian,

You can refresh an additional row using the GridView.RefreshRow method. Here is an example:

C#
void ColumnEdit_EditValueChanged(object sender, EventArgs e) { //this should'nt be necessary in filterrows (Bug 7321) if (!gridViewCore.IsFilterRow(gridViewCore.FocusedRowHandle)) { gridViewCore.PostEditor(); DomainObject1 focusedObj = (DomainObject1)gridViewCore.GetFocusedRow(); int relatedRowHandle = gridViewCore.FindRow(focusedObj.DomainObject1Reference); gridViewCore.RefreshRow(relatedRowHandle); } }
    Comments (3)

      Hi Anatol,
      ok I see. Isn't there a more generic solution? The value of the property in the related row is being changed in the object bound to the related row. Unfortunately a property-change has no effect on the changed row in this case.
      The controller supposed by Dennis works for every listView and our developers don't even have to know that it exists. The code you proposed has to be written for every listView with such a case (and every possible case in that listView… because of layoutCustomization it's possible to have such update problems and don't event know about them).
      I don't understand the reason why the refresh isn't working automatically, maybe you could change something in your codebase?
      Thank you for your answer
      Christian

      DevExpress Support Team 9 years ago

        Hi Christian,

        I'm searching for the precise answer to your question and need some more time for this. Thank you for your understanding.
        I will inform you when I have any results…

        Anatol (DevExpress) 9 years ago

          I am afraid that there is no other solution for the Server Mode data source. Either change the ListView's DataAccessMode to Client, or refresh the necessary rows using the GridView,RefreshRow method. Even if a changed object can have several related objects, I believe that it is still possible to determine all these objects and refresh them.

          Disclaimer: The information provided on DevExpress.com and affiliated web properties (including the DevExpress Support Center) is provided "as is" without warranty of any kind. Developer Express Inc disclaims all warranties, either express or implied, including the warranties of merchantability and fitness for a particular purpose. Please refer to the DevExpress.com Website Terms of Use for more information in this regard.

          Confidential Information: Developer Express Inc does not wish to receive, will not act to procure, nor will it solicit, confidential or proprietary materials and information from you through the DevExpress Support Center or its web properties. Any and all materials or information divulged during chats, email communications, online discussions, Support Center tickets, or made available to Developer Express Inc in any manner will be deemed NOT to be confidential by Developer Express Inc. Please refer to the DevExpress.com Website Terms of Use for more information in this regard.