Question

Keep ColorEditBox opened after a reload

Posted 1 month ago by Avatar Antoine Picard

Hi !

I don't know if I should ask this in Grids or in Editors as I use both but here I am.

My project can be simplified like this : a project A with a visual interface where my objects are displayed and a project B connected to project A and using the Actipro Grid to display the properties of a selected object in project A.

When I change a color using the color picker in my project B, it triggers the PropertyValueChanged event so I send this new value to project A so it can display the changes and then project A send back those values to project B to update my grid.

Is there a way to keep the color picker opened when I update my grid ? I just tried to keep focus on this property in the dataFactory with propertyModel.IsSelected = true but it doesn't work, the selected property is still the first one.

Am I clear enough ?

Thanks for your help,

AP


Comments (4)

Posted 1 month ago by Actipro Software Support - Cleveland, OH, USA

Hi Antoine,

Is the PropertyGrid refreshing (i.e. PropertyGrid.DataObject is changed) when you change the color?  A full refresh from the data object being changed would clear out all data models and property editors and would definitely close a popup.

On the other hand, if you are simply updating a color property's value and no data object is changing, then it might not close the popup since I think the property model would just catch the value change and update its property editor binding to the value.


Actipro Software Support
Posted 1 month ago by Antoine Picard

Hi,

Thanks for your answer, it could solve my Color problem but I have another issue with this.

I have an object with a 2D position, linked to a parent, so my object also has an offset position (in relation to his parent's position) property. This property is only refreshed after I send it to project A (previous example) and receive it again in project B (where my PropertyGrid is). Is there a way to update only this offset property, or do I have to go through each property to find wich one has changed (and if yes, how).

Posted 1 month ago by Actipro Software Support - Cleveland, OH, USA

Hi Antoine,

Do you mean that your PropertyGrid.DataObject is set to a class instance (let's call it MyObject) and the MyObject class has a Position property and an Offset property on it?  The same would apply per above where if you are changing the MyObject instance value set to PropertyGrid.DataObject, it will do a full refresh.  But if you simply modify the properties like Position on the same MyObject instance, it should just reflect their updates without having to rebuild the UI.

Or if I'm misunderstanding, please provide some more detail and perhaps send our support address a new simple sample project that shows it happening.  If you send anything, remove the bin/obj folders from what you send and rename the .zip file extension so it doesn't get spam blocked.  Thanks!


Actipro Software Support
Information The latest build of this product (2018.1 build 0672) was released 27 days ago, which was before the next post in this thread.
Posted 24 days ago by Antoine Picard

Hi !

I found a solution by using a DebounceDispatcher to send my changes and reload my PropertyGrid only after a short waiting time.

Thanks for your help !

AP


Add a Comment

Please log in to a validated account to post comments.