Dont work row fill in grid panel

I’m trying to dynamically set the filling:

But it does not work.

Hello ,

I have a few questions for you that will help narrow down what issue it is that you are experiencing.

Quick questions:

  1. Could you elaborate on the issue that you are having?
  2. Could you explain what you are seeing and how it is at an inverse to what you are expecting to happen?

I want to configure filling of the elements in the grid with the help of blueprints. I have “row fill” variable, but when I changed it, the filling remains the same (that is configured manually in a widget - “Fill Rules” category). I looked source code of the widget and found SynchronizeProperties method. I have to call this method, but I do not have access to it.

Hello ,

I was able to reproduce this issue on our end. I have written up a report ( UE-27578) and I have submitted it to the developers for further consideration. I will provide updates with any pertinent information as it becomes available. Thank you for your time and information.

Make it a great day

Does anyone know if this issue has been resolved?

I have provided a link to the public tracker. Please feel free to use the link provided for future updates.

Link: Unreal Engine Issues and Bug Tracker (UE-27578)

Make it a great day

Sorry to see this issue closed as Won’t Fix, but understang that developers probably have more important issues to solve.
I needed this feature to dynamically adjust Grid Panel column sizes in percentages, so did a workaround by using filled horizontal box instead.

Can you go into details on the workaround? If you say you use horizontal box, is it in combination to the grid panel or did you accomplish what you had to with just the horizontal box?

This bug needs a fix, it would make things a lot easier.

Hello jpavlek,

This issue was closed as ‘Won’t Fix’ due to an extended period of time without updates. I went ahead and reopened this issue due to renewed interest.

Make it a great day

It’s the same case with Column Fill, just replicated this in an empty project.

For those who are having this issue and need a fix now, try adding the following to a BP function library:

// .h

// Applies all properties to the native widget if possible.
UFUNCTION(BlueprintCallable, Category = "MyFunctionLibrary")
static void SynchronizeWidgetProperies(UWidget* Widget);


// .cpp
void UMyFunctionLibrary::SynchronizeWidgetProperies(UWidget* Widget)
{
	if (Widget)
	{
		Widget->SynchronizeProperties();
	}
}

Then after changing fill values, call the static function with the grid widget as the argument.

Dude, help me out
I need this feature so much that I generated C++ project just to add this.
I’ve done exactly like you said and I’m getting this compiler error:

Do you have any ideas why this could be happening?

Could you show the implementation of your function? The cpp file.

Sure thing

Looks like some kind of linking error. Have you managed to compile the C++ project before adding this code? Try a rebuild of the project (right click on project name in solution explorer and click rebuild). Also could you paste the build output instead of the error panel.

Yeah, I do the Rebuild each time and without this code it compiles fine.
From the output the coughup happens around this part:

Sry for pasting it as an image, the forum somehow does not let me do a quote o_0

You might need to add "UMG" and possibly "Slate" and "SlateCore" to your dependencies in your ProjectName.Build.cs file.

https://docs.unrealengine.com/latest/INT/Programming/Tutorials/UMG/1/

Yeah it worked!
Dude thanks a TON, for the initial snippet and quick response, much love. :slight_smile:

No problem :slight_smile:

I know this is an old thread but I am facing a similar problem and what I understood is, That node gets the Row fills that you set in the designer. Its a Getter node not a Setter. You cannot edit that array. Unreal should provide a way to set the elements in that array.