public NormalUIScreen(IUIRenderer renderer) : base("Normal", renderer) { Image = new Image { Width = 800, Height = 450, }; _window = new Window { X = 100, Y = 50, Title = "3D Scene (Click scene to control camera. Press <Esc> to leave scene.)", CanResize = true, CloseButtonStyle = null, // Hide close button. Content = new ScrollViewer { HorizontalAlignment = HorizontalAlignment.Stretch, VerticalAlignment = VerticalAlignment.Stretch, Content = Image }, }; _window.Show(this); }
private void OpenDialogFromCode(object sender, EventArgs eventArgs) { // ----- Create dialog. var text = new TextBlock { Text = "This layout was defined in code.", Margin = new Vector4F(4), HorizontalAlignment = HorizontalAlignment.Center, }; var button = new Button { Content = new TextBlock { Text = "Ok" }, IsCancel = true, // Cancel buttons are clicked when the user presses ESC (or BACK or B on the gamepad). IsDefault = true, // Default buttons are clicked when the user presses ENTER or SPACE (or START or A on the gamepad). Margin = new Vector4F(4), Width = 60, HorizontalAlignment = HorizontalAlignment.Center, }; var stackPanel = new StackPanel { Margin = new Vector4F(4) }; stackPanel.Children.Add(text); stackPanel.Children.Add(button); var window = new Window { CanResize = false, IsModal = true, // Modal dialogs consume all input until the window is closed. Content = stackPanel, MinHeight = 0, Title = "A modal dialog from code", }; button.Click += (s, e) => window.Close(); // ----- Show the window in the center of the screen. // First, we need to open the window. window.Show(this); // The window is now part of the visual tree of controls and can be measured. (The // window does not have a fixed size. Window.Width and Window.Height are NaN. The // size is calculated automatically depending on its content.) window.Measure(new Vector2F(float.PositiveInfinity)); // Measure computes DesiredWidth and DesiredHeight. With this info we can center the // window on the screen. window.X = Screen.ActualWidth / 2 - window.DesiredWidth / 2; window.Y = Screen.ActualHeight / 2 - window.DesiredHeight / 2; }