cancel
Showing results for 
Search instead for 
Did you mean: 

Enhanced Groups - add option to make group behave as the old grouping

Oké, the title is not very clear (so if someone know a better title please let me know).

 

What I mean is that with the enhanced grouping a group is now like a control. So if you set the visibility to true it will behave like a transparant label which blocks your controls under it.

  • This behaviour is perfect when you want to be able to set a variable to the visibility parameter off the group (as I use to make UserForms),
  • This behaviour is a problem when you just want to group some controles together to make the tree cleaner and easier to read (As example you can think off icons used to tricker formulas which are positioned in the top and bottom off the screen. It nice to group all these controls, but with the enhanced grouping the underlaying controls stop working)
  • Also I like to group groups together. Example: for my UserForms I have a basic layer and a group per UserForm (this can be multiple groups). I Just want to group them so I have one group for all UserForms. I want this to be visible, but not with a solid surface. (See atachment for the tree view)

Thinking about it, just make a group just a grouping and not like a control. We can add a label if we want to block the underlaying controls. Keep the visibility parameter, because this is a great feature.

Status: Need Info
Comments
Level 10

Note that a major issue with the way the old group control worked was that if you changed changed Visible on it, it would wipe out the Visible property of the others and though you could then go back and manually change the Visible on its members, they were still subject to being wiped out again if I later changed Visible on the old group control). 

Note that this issue and limitation applies to other properties on the old group control as well.

 

With the enhanced group control (Visibile being one exception), instead you can have the underlying members reference "Parent.<propertyname>" instead to specify when you really want it to use the value from the parent and when you don't (as stated, Visible is an exception as while the underlying members do have their own Visibile now, setting Visible to false on the enhance group does indeed make the others not visible).  

PowerApps Staff

Following up by private message with Paul to clarify if adjusting the Z-order (move to back for the enhanced group) would allow the group holding top and bottom items to not prevent interactions for controls positioned between.

PowerApps Staff
Status changed to: Need Info
 
Level 10

@aorth 

 

After working with enhanced groups for some while now I think that the behaviour as is, is pretty perfect. 

 

So keep the enhanced group like a control, so the surface solid.

 

Paul

Anonymous
Not applicable

I Disagree with @KroonOfficeSol  - The enhanced group behavior is ALMOST perfect.

 

The behavior capabilities and behavior is what I want - I want each control to have it's own properties, but then I want to be able to show/hide several controls en masse, without having to add more complex conditions to each one of their visible properties. This accomplished that behavior.

 

Another thing I may want to do with grouping is to lay out and move controls so that they maintain their orientation and size relative to each other. This was the only real practical use of the old grouping function. So there are really two totally different uses for grouping - adding another layer of behavior to a group of controls, and simplifying the UI layout process during design. Enhanced Grouping accomplished both purposes perfectly.

 

The problem is with the way groups are handled in the UI in the player. A group should not be rendered as a solid rectangular object that affects user interation, since it cannot itself be interacted with by the user. What I mean is, the group is treated as though it were a pane of glass, in which the grouped controls are embedded. The empty space in between controls does not contain anything with which the user can interact, yet there is a "glass pane" that is "covering" controls underneath. There is no scenario in which a designer would find this useful as, again, there is nothing for the user to click on in this space between grouped controls - only there might be controls in that space that are NOT part of the group, and the "glass" in which grouped controls are embedded will block user interaction with those.

 

They need to keep the behavior exactly the same, but stop rendering the groups as UI objects with physical area. Grouping should add the same set of parent properties to a control as it does now, but the "group" itself should not be given physical space on the canvas. Said another way - a group should exist only virtually, but without any physical representation in the player.

Level 10

Recommend:

 

  • Rename "Enhanced Group" to Container (though not a big deal, but Container really is a better name as it does imply itself is a UI object)

  • Allow the old Group functionality alongside the Container/Enhanced Group control, EVEN WHEN "Try the enhanced Group control") is selected.


This would allow BOTH use cases at the same time which could be useful in MANY applications.  While I'd choose the Enhanced Group control over the old Group if there HAD to be a choice, I think having the capability to both would be a BIG advantage.

 

Level 10

Oké, I posted this thread almost a year ago and I was totally wrong in the way I looked at it then. The PowerApps teams should keep the Enhanced groups as they are and only add some extra properties like a .Color. Not to have this for the group itself, but just to be able to reference the Parent.Color from the controls inside the Group. Btw: I posted another question on this request, so maybe you should all kudo this thread.

 

Of course the PowerApps team could

  • re-name the Enhanced Group to containers, because that is basically what they are
  • make the old grouping available when the option is on (but I can't think of a situation in which I would use this grouping, so why bother to build this)
  • Or even add a property Group.Surface with option to make the surface solid or transparant (meaning controls behind the group are selectable)

I will now close this thread because I don't see the need for the change anymore.

 

Greetings and thanks for your support on this idea,

 

Paul

 

 

 

 

Level 10

@aorth Could you please close this idea? Thanks, Paul