private void SetupControls() { label = new Label(); progressBar = new ProgressBar(); rectangle = new Rectangle(); rectangle.BorderStyle = BorderStyle.Double; rectangle.Height = 8; rectangle.Width = Width - 6; rectangle.Top = Height / 2 - rectangle.Height / 2; rectangle.Left = Width / 2 - rectangle.Width / 2; rectangle.HasShadow = true; label.Width = rectangle.Width - 4; label.Top = rectangle.Top + 2; label.Left = rectangle.Left + 2; label.TextAlign = TextAlign.Center; progressBar.Width = label.Width / 2; progressBar.ProgressBarStyle = ProgressBarStyle.Marquee; progressBar.Left = Width / 2 - progressBar.Width / 2; progressBar.Top = label.Top + 2; progressBar.BorderStyle = BorderStyle.Single; progressBar.BlockColor = ConsoleColor.Green; Controls.Add(rectangle, label, progressBar); }
private static void DoubleBorderLabelScreen(ScreenCollection screens) { var screen = new Screen("Double Border Labels"); var control1 = new Label("This is a left aligned label (full width, double border)."); control1.Left = 0; control1.Top = 0; control1.Width = screen.Width; control1.BorderStyle = BorderStyle.Double; var control2 = new Label("This is a centered label (full width, double border)."); control2.Left = 0; control2.Top = control1.Top + control1.Height; control2.Width = screen.Width; control2.TextAlign = TextAlign.Center; control2.BorderStyle = BorderStyle.Double; var control3 = new Label("This is a right aligned label (full width, double border)."); control3.Left = 0; control3.Top = control2.Top + control2.Height; control3.Width = screen.Width; control3.TextAlign = TextAlign.Right; control3.BorderStyle = BorderStyle.Double; screen.Controls.Add(control1); screen.Controls.Add(control2); screen.Controls.Add(control3); screen.Footer.Text = screen.Name + ". Press any key."; screens.Add(screen); screen.AfterPaint += (s, e) => { Console.ReadKey(true); }; }
public LoginScreen(string name) : base(name) { usernameLabel = new Label(); passwordLabel = new Label(); usernameTextBox = new TextBox(); passwordTextBox = new TextBox(); rectangle = new Rectangle(); loginButton = new Button(); cancelButton = new Button(); failureLabel = new Label(); progressBar = new ProgressBar(); SetupControls(); loginButton.Click += LoginButton_Click; cancelButton.Click += CancelButton_Click; cancelButton.EscPressed += CancelButton_Click; loginButton.EscPressed += CancelButton_Click; usernameTextBox.EscPressed += CancelButton_Click; passwordTextBox.EscPressed += CancelButton_Click; passwordTextBox.KeyPressed += PasswordTextBox_KeyPressed; }
private static void ShadowLabelScreen(ScreenCollection screens) { var screen = new Screen("Basic Labels"); var control1 = new Label("This is a left aligned label (shadow, no border)."); control1.Left = 0; control1.Top = 0; control1.Width = screen.Width - 2; var control2 = new Label("This is a centered label (shadow, no border)."); control2.Left = 0; control2.Top = control1.Top + control1.Height + 2; control2.Width = screen.Width - 1; control2.TextAlign = TextAlign.Center; var control3 = new Label("This is a right aligned label (shadow, full width, no border)."); control3.Left = 0; control3.Top = control2.Top + control2.Height + 2; control3.Width = screen.Width; control3.TextAlign = TextAlign.Right; control1.HasShadow = true; control2.HasShadow = true; control3.HasShadow = true; screen.Controls.Add(control1); screen.Controls.Add(control2); screen.Controls.Add(control3); screen.Footer.Text = screen.Name + ". Press any key."; screens.Add(screen); screen.AfterPaint += (s, e) => { Console.ReadKey(true); }; }