cancel
Showing results for 
Search instead for 
Did you mean: 
Reply

Flexible Height Gallery Issue

@RandyHayes 

 

Hello Randy,

 

I hope you are doing well. I see you've been active on the Community boards recently so I thought I would try tagging you. I'm working on an Onboarding app. The Onboarding Tasks gallery is a flexible height gallery. It works fine in studio mode, but not in published play mode in a Microsoft Edge browser. I've read through Community posts, blogs and watched videos, but none of the formulas outlined so far have resolved the issue. It is an expandable/collapsible gallery that operates on a variable so not sure if that is adding complexity to what should be a pretty straightforward use case.

 

Here is a snapshot of what the published version looks like in Edge. The TemplateSize formula is below. AutoHeight and Wrap are currently turned off for all of the labels except for the Task Description label that is highlighted in yellow. Turning them all on hasn't yielded any different result. The Description is a multiline plain text column in SharePoint and the label is a text label versus an HTML text label. A 2-page formula summary is attached in case you need to see any additional details. I'm really scratching my head on this one so I would appreciate any help you could give me since I can't launch it looking like this. Thanks! Teresa

 

 

btnOnTask.Y + btnOnTask.Height + lblActionItemOnDetails.Height + lblHelpfulInfoOn.Height + lblDescriptionOn.AutoHeight + 45

 

I've also tried setting the TemplateSize to a static 150 (same exact result). I noticed that the status label was sitting at a Y of 4 so I also tried setting the Template size to the following. No success with this one either. Same exact result. The lowest line is only cut off by a few pixels. I can't figure out what is causing the issue.

 

lblStatusOn.Y + lblStatusOn.Height + 150

 

There are no nested galleries within the main flexible height gallery.

FlexibleHeightIssue.png

1 ACCEPTED SOLUTION

Accepted Solutions
BCBuizer
Multi Super User
Multi Super User

Hi @tagustin ,

 

Referencing the  AutoHeight property will return a boolean, and will not add anything the TemplateHeight number. I just did a quick test with a label (Label1) that had AutoHeight enabled and a second label showing Label1.Height and the number was increasing when I added more lines to the Text property of Label1.

 

Any changes made to the PaddingTop and PaddingBottom properties also reflected in the value for the Height property.

 

After that I tried re-creating your set-up and found it is easiest to take the Y property of the bottom label as a reference point, rather than the top one so you can leave out have to calculate everything in between and compensating for adjustments made in the Y properties (+5, -3, -5). In your case this will result in:

 

TemplateHeight = lblDescriptionOn.Y + lblDescriptionOn.Height

 



Did you like my post? Please give it a thumbs up! Did I resolve your issue? Please click Accept as Solution to close the topic and so other members of the community can find solutions more easily.

View solution in original post

10 REPLIES 10
BCBuizer
Multi Super User
Multi Super User

Hi @tagustin ,

 

I see you are referencing the AutoHeight property of the lblDescriptionOn control. Shouldn't that be the Height property?

btnOnTask.Y + btnOnTask.Height + lblActionItemOnDetails.Height + lblHelpfulInfoOn.Height + lblDescriptionOn.Height + 45

 



Did you like my post? Please give it a thumbs up! Did I resolve your issue? Please click Accept as Solution to close the topic and so other members of the community can find solutions more easily.

@BCBuizer 

 

Hello BC,

 

That's how I had it at first before I tried the AutoHeight version. I changed it back to Height, just in case it would reset properly, but as you can see it is not unfortunately.

btnOnTask.Y + btnOnTask.Height + lblActionItemOnDetails.Height + lblHelpfulInfoOn.Height + lblDescriptionOn.Height + 25

Overlap.png

BCBuizer
Multi Super User
Multi Super User

Hi @tagustin ,

 

Referencing the  AutoHeight property will return a boolean, and will not add anything the TemplateHeight number. I just did a quick test with a label (Label1) that had AutoHeight enabled and a second label showing Label1.Height and the number was increasing when I added more lines to the Text property of Label1.

 

Any changes made to the PaddingTop and PaddingBottom properties also reflected in the value for the Height property.

 

After that I tried re-creating your set-up and found it is easiest to take the Y property of the bottom label as a reference point, rather than the top one so you can leave out have to calculate everything in between and compensating for adjustments made in the Y properties (+5, -3, -5). In your case this will result in:

 

TemplateHeight = lblDescriptionOn.Y + lblDescriptionOn.Height

 



Did you like my post? Please give it a thumbs up! Did I resolve your issue? Please click Accept as Solution to close the topic and so other members of the community can find solutions more easily.

@tagustin 

Hi Teresa.  Hope you are doing well also!

 

So, you're actually doing more than you need to in your gallery controls.  When you use a Flexible Height gallery, it will adjust its size based on what is visible and what is not.  You don't need to mess with the height property or be so specific on the placement of the controls in it.

 

A couple of things to consider:

1) For your Icon.  Make it one icon.  Hiding controls and overlaying with another that is visible is generally not a good practice.  

So, for the View/Hide Icon, make it just one Icon and set the Icon property to:

If(varAccordion = ThisItem.ID, Icon.Hide, Icon.View)

2) Reference what you already have!  Do your visible formula once and then reference the control that contains that formula.

So, for your lblActionItemOnDetails Visible property, set it to:

varAccordion = ThisItem.ID || yourExpandAllToggle.Value

Then all the other controls in your gallery can reference the lblActionItemOnDetails Visible property.

i.e. lblHelpfullInfoOn Visible property:  lblActionItemOnDetails.Visible

 

3) On your toggle, you can get rid of all the OnCheck and UnCheck stuff...you don't need to be so programmatic. Your new Visible property formulas above will now address the toggle - that is all you need.

 

That is it!  Set your gallery controls as needed (you don't need to be specific with adding heights and Y values - just place as needed)

 

Do not put a formula in the TemplateHeight property.  Just set the template height in the designer (size as needed) and leave it.

 

When controls are visible in the gallery, the gallery will resize.  When not, it will shrink.

 

I hope this is helpful for you.

_____________________________________________________________________________________
Digging it? - Click on the Thumbs Up below. Solved your problem? - Click on Accept as Solution below. Others seeking the same answers will be happy you did.
NOTE: My normal response times will be Mon to Fri from 1 PM to 10 PM UTC (and lots of other times too!)
Check out my PowerApps Videos too! And, follow me on Twitter @RandyHayes

Really want to show your appreciation? Buy Me A Cup Of Coffee!

@RandyHayes @BCBuizer 

 

Thank you both for your advice. I'm sorry for the delay in response. I did jump on this yesterday as much as possible between meetings. Per Randy's advice I inserted a rectangle spacer when nothing else would work. The top screenshot is the app in studio mode. The second screenshot is Play mode. Having the spacer prevents the instructions from overlapping onto the gray spacer bar, but the shape still overlaps so I centered it in such a way as to not cover the check box and view icon. I did have to set a relative Y formula for the spacer as with a static Y, the text was still overlapping onto the gray bar.

 

I removed the teal action item label as it was redundant to the information in the gray bar (btnOnTask) and set the visibility of all of the labels in the gallery to the Helpful Information label instead. Randy, I like your simplified formulas very much. There is just one little adjustment I am hoping you can help with. If I open a single item and then toggle all to expand and then all to close, the one item that was originally opened stays open rather than closing with all the rest. If I have all items open and click the View icon for an item, the icon changes, but the item won't close OnSelect of the item. The OnSelect of the View icon is currently set to Select(btnOnTask). The Visible property of the Helpful Information label is set to varAccordion = ThisItem.ID || tglExpandOn.Value.

 

In regards to the overlapping issue, I think I can live with the current results as the text is no longer overlapping onto the gray bar. I wish I could figure out why the rectangle isn't staying within the boundaries of the gallery item, but it may just be one of life's PowerApps mysteries. With the rectangle set to Transparent, users won't know.

 

Rectangle Spacer Formulas:

Visible:  lblHelpfulInfoOn.Visible
Y: lblDescriptionOn.Y + lblDescriptionOn.Height
OnSelect: Select(btnOnTask)

AFloatingBarStudio.pngBFloatingBarPlay.png

@tagustin 

Well, to be certain, I reproduced the scenario as close as I could and saw no issue.

I have a gallery and a toggle.  In the gallery I have just two labels.  One is fixed height and the other is autoheight.  Also is a rectangle that bases its position off of the second label position.

Everything expanded as expected. 

Is the above scenario pretty much a good test, or do you feel there is something in yours that is a bit unique?

_____________________________________________________________________________________
Digging it? - Click on the Thumbs Up below. Solved your problem? - Click on Accept as Solution below. Others seeking the same answers will be happy you did.
NOTE: My normal response times will be Mon to Fri from 1 PM to 10 PM UTC (and lots of other times too!)
Check out my PowerApps Videos too! And, follow me on Twitter @RandyHayes

Really want to show your appreciation? Buy Me A Cup Of Coffee!

@RandyHayes 

 

Hi Randy,

 

Thank you for trying to reproduce the flexible height issue. In addition to the 2 labels (Helpful Info/Height & Description/AutoHeight) and rectangle shape you mentioned, My app has the various labels & icon in the gray headerbar/button in addition and the Phase and Link labels in the body. The Phase Label Y is based on the Helpful Info Label Y and the Link Label Y is based off of the Helpful Info Y. The labels and icon in the gray header/button bar have a flat number Y. 

 

Highlight.png

Accordion Behavior Issue

Did you see my questions regarding how to be able to independently operate the sections when the toggle is in play? Another behavior I need to adjust is that I want all of the sections to be closed when the user comes to the screen. That was the behavior I had going before with the more complex formulas. The current OnVisible formula is: Set(varAccordion, 0). What do I need to adjust that? If I try to set it to false it errors out and if I enter the number 1 or -1, it still defaults to having everything open. Let me know if you want me to submit a separate entry for this issue since it really has nothing to do with the original flexible height issue I first submitted. I love your simple approach to formulas, but I also want to be respectful of your time so let me know if it would be easier on you if I just went back to the original formulas I was using.

 

Thanks again for all of the help Randy! 

Teresa

@RandyHayes @BCBuizer 

 

Hello, 

 

I have family coming in from out of state for a visit and will be taking a break from the computer to visit with them for the next several days so I went ahead and marked BC's post as a solution. I will add that Randy's suggestion of adding a rectangle spacer was necessary in order to prevent the text from overlapping on the gray bar. I don't know why the gallery continues to misbehave in the sense that the rectangle spacer is still overlapping the bar, but it is working well enough for now.

 

Randy, in my last post I outlined the issues I am having with the accordion action with the simplified formulas so I think I am going to have to revert back to the more complex ones for now since they are producing what I need. I am always eager to learn from you, but I think a separate post when I get back from vacation would be best if you have time. Thank you both so much for your time and support. I really appreciate it! I'm definitely better off now than before you helped me out.

 

Have a nice weekend,

Teresa

@tagustin 

Yes, enjoy your vacation time and we can circle back on it after that.

 

In general, the flex height gallery works well as long as you just let it do its thing.  Once you start trying to "help" it with formula on positioning, things start to go bad.

The only time I usually see any real oddity in them is with a nested gallery that is also flex-height.  The rendering of that goes a little screwy.

 

Anyway...please enjoy your time and weekend!

_____________________________________________________________________________________
Digging it? - Click on the Thumbs Up below. Solved your problem? - Click on Accept as Solution below. Others seeking the same answers will be happy you did.
NOTE: My normal response times will be Mon to Fri from 1 PM to 10 PM UTC (and lots of other times too!)
Check out my PowerApps Videos too! And, follow me on Twitter @RandyHayes

Really want to show your appreciation? Buy Me A Cup Of Coffee!

Helpful resources

Announcements

Community will be READ ONLY July 16th, 5p PDT -July 22nd

Dear Community Members,   We'd like to let you know of an upcoming change to the community platform: starting July 16th, the platform will transition to a READ ONLY mode until July 22nd.   During this period, members will not be able to Kudo, Comment, or Reply to any posts.   On July 22nd, please be on the lookout for a message sent to the email address registered on your community profile. This email is crucial as it will contain your unique code and link to register for the new platform encompassing all of the communities.   What to Expect in the New Community: A more unified experience where all products, including Power Apps, Power Automate, Copilot Studio, and Power Pages, will be accessible from one community.Community Blogs that you can syndicate and link to for automatic updates. We appreciate your understanding and cooperation during this transition. Stay tuned for the exciting new features and a seamless community experience ahead!

Summer of Solutions | Week 4 Results | Winners will be posted on July 24th

We are excited to announce the Summer of Solutions Challenge!   This challenge is kicking off on Monday, June 17th and will run for (4) weeks.  The challenge is open to all Power Platform (Power Apps, Power Automate, Copilot Studio & Power Pages) community members. We invite you to participate in a quest to provide solutions in the Forums to as many questions as you can. Answers can be provided in all the communities.    Entry Period: This Challenge will consist of four weekly Entry Periods as follows (each an “Entry Period”)   - 12:00 a.m. PT on June 17, 2024 – 11:59 p.m. PT on June 23, 2024 - 12:00 a.m. PT on June 24, 2024 – 11:59 p.m. PT on June 30, 2024 - 12:00 a.m. PT on July 1, 2024 – 11:59 p.m. PT on July 7, 2024 - 12:00 a.m. PT on July 8, 2024 – 11:59 p.m. PT on July 14, 2024   Entries will be eligible for the Entry Period in which they are received and will not carryover to subsequent weekly entry periods.  You must enter into each weekly Entry Period separately.   How to Enter: We invite you to participate in a quest to provide "Accepted Solutions" to as many questions as you can. Answers can be provided in all the communities. Users must provide a solution which can be an “Accepted Solution” in the Forums in all of the communities and there are no limits to the number of “Accepted Solutions” that a member can provide for entries in this challenge, but each entry must be substantially unique and different.    Winner Selection and Prizes: At the end of each week, we will list the top ten (10) Community users which will consist of: 5 Community Members & 5 Super Users and they will advance to the final drawing. We will post each week in the News & Announcements the top 10 Solution providers.  At the end of the challenge, we will add all of the top 10 weekly names and enter them into a random drawing.  Then we will randomly select ten (10) winners (5 Community Members & 5 Super Users) from among all eligible entrants received across all weekly Entry Periods to receive the prize listed below. If a winner declines, we will draw again at random for the next winner.  A user will only be able to win once overall. If they are drawn multiple times, another user will be drawn at random.  Individuals will be contacted before the announcement with the opportunity to claim or deny the prize.  Once all of the winners have been notified, we will post in the News & Announcements of each community with the list of winners.   Each winner will receive one (1) Pass to the Power Platform Conference in Las Vegas, Sep. 18-20, 2024 ($1800 value). NOTE: Prize is for conference attendance only and any other costs such as airfare, lodging, transportation, and food are the sole responsibility of the winner. Tickets are not transferable to any other party or to next year’s event.   ** PLEASE SEE THE ATTACHED RULES for this CHALLENGE**   Week 1 Results: Congratulations to the Week 1 qualifiers, you are being entered in the random drawing that will take place at the end of the challenge. Community MembersNumber of SolutionsSuper UsersNumber of Solutions @anandm08  23 @WarrenBelz  31 @DBO_DV  10 @Amik  19 AmínAA 6 @mmbr1606  12 @rzuber  4 @happyume  7 @Giraldoj  3@ANB 6 (tie)   @SpongYe  6 (tie)     Week 2 Results: Congratulations to the Week 2 qualifiers, you are being entered in the random drawing that will take place at the end of the challenge. Community MembersSolutionsSuper UsersSolutions @anandm08  10@WarrenBelz 25 @DBO_DV  6@mmbr1606 14 @AmínAA 4 @Amik  12 @royg  3 @ANB  10 @AllanDeCastro  2 @SunilPashikanti  5 @Michaelfp  2 @FLMike  5 @eduardo_izzo  2   Meekou 2   @rzuber  2   @Velegandla  2     @PowerPlatform-P  2   @Micaiah  2     Week 3 Results: Congratulations to the Week 3 qualifiers, you are being entered in the random drawing that will take place at the end of the challenge.   Week 3:Community MembersSolutionsSuper UsersSolutionsPower Apps anandm0861WarrenBelz86DBO_DV25Amik66Michaelfp13mmbr160647Giraldoj13FLMike31AmínAA13SpongYe27     Week 4 Results: Congratulations to the Week 4 qualifiers, you are being entered in the random drawing that will take place at the end of the challenge.   Week 4:Community MembersSolutionsSuper UsersSolutionsPower Apps DBO-DV21WarranBelz26Giraldoj7mmbr160618Muzammmil_0695067Amik14samfawzi_acml6FLMike12tzuber6ANB8   SunilPashikanti8

Check Out | 2024 Release Wave 2 Plans for Microsoft Dynamics 365 and Microsoft Power Platform

On July 16, 2024, we published the 2024 release wave 2 plans for Microsoft Dynamics 365 and Microsoft Power Platform. These plans are a compilation of the new capabilities planned to be released between October 2024 to March 2025. This release introduces a wealth of new features designed to enhance customer understanding and improve overall user experience, showcasing our dedication to driving digital transformation for our customers and partners.    The upcoming wave is centered around utilizing advanced AI and Microsoft Copilot technologies to enhance user productivity and streamline operations across diverse business applications. These enhancements include intelligent automation, AI-powered insights, and immersive user experiences that are designed to break down barriers between data, insights, and individuals. Watch a summary of the release highlights.    Discover the latest features that empower organizations to operate more efficiently and adaptively. From AI-driven sales insights and customer service enhancements to predictive analytics in supply chain management and autonomous financial processes, the new capabilities enable businesses to proactively address challenges and capitalize on opportunities.    

Updates to Transitions in the Power Platform Communities

We're embarking on a journey to enhance your experience by transitioning to a new community platform. Our team has been diligently working to create a fresh community site, leveraging the very Dynamics 365 and Power Platform tools our community advocates for.  We started this journey with transitioning Copilot Studio forums and blogs in June. The move marks the beginning of a new chapter, and we're eager for you to be a part of it. The rest of the Power Platform product sites will be moving over this summer.   Stay tuned for more updates as we get closer to the launch. We can't wait to welcome you to our new community space, designed with you in mind. Let's connect, learn, and grow together.   Here's to new beginnings and endless possibilities!   If you have any questions, observations or concerns throughout this process please go to https://aka.ms/PPCommSupport.   To stay up to date on the latest details of this migration and other important Community updates subscribe to our News and Announcements forums: Copilot Studio, Power Apps, Power Automate, Power Pages

Users online (1,645)