title: JavaFX StackPane bounds not updated
body: <p>When I run the following program</p>
  
  <pre><code>import javafx.application.Application;
  import javafx.application.Platform;
  import javafx.scene.Scene;
  import javafx.scene.control.Label;
  import javafx.scene.layout.Pane;
  import javafx.scene.layout.StackPane;
  import javafx.scene.shape.Ellipse;
  import javafx.stage.Stage;
  
  
  public class Test1 extends Application {
  
      public static void main(String[] args) throws Exception {       
          launch(args);
      }
  
      @Override
      public void start(Stage stage) throws Exception {       
          Pane topPane = new Pane();      
          Scene scene = new Scene(topPane, 600, 400);
  
          StackPane sp = new StackPane();
          Label l1 = new Label("1 2");
          Ellipse e1 = new Ellipse(100, 50);
          e1.setOpacity(0.5);
          sp.getChildren().addAll(l1, e1);            
          e1.radiusXProperty().bind(l1.widthProperty());
          e1.radiusYProperty().bind(l1.heightProperty());         
          topPane.getChildren().add(sp);
          sp.relocate(200, 100);
  
          sp.setStyle("-fx-border-color: RED;");              
  
          Platform.runLater(() -&gt; {
              //l1.setText("123");
              //l1.setText("1 2");
          });             
  
          stage.setScene(scene);
          stage.show();       
      }
  }
  </code></pre>
  
  <p>I get a red box surrounding the text label only, but when I uncomment the two lines inside the Platform.runLater() block above, I get a red box surrounding the outer ellipse, which is what I want.
  So it seems to me the layout bounds of the stack pane is not set correctly from the model description, since the bounds are determined only from the label control. But when I force an invalidation in Platform.runLater() the layout bounds are where they should be.<br>
  Why is this happening and how do I prevent it? I would like to be able to just specify my model/graph and then it should render correctly on the first show, or?</p>