Subclass Panel : Panel « GUI Windows Form « C# / C Sharp






Subclass Panel

 

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Text;
using System.Windows.Forms;

public class ScrollingText : System.Windows.Forms.Panel {
    Font textFont = new Font("Times New Roman", 24);

    public ScrollingText() {
        InitializeComponent();
    }

    private void ScrollingText_Paint(object sender, PaintEventArgs e) {
        Graphics g = e.Graphics;
        g.TranslateTransform(this.AutoScrollPosition.X, this.AutoScrollPosition.Y);
        g.DrawString("Hello, World", textFont, Brushes.Black, 40, 40);
        g.DrawString("Hello, World", textFont, Brushes.Red, 40, 240);
        g.DrawString("Hello, World", textFont, Brushes.Blue, 350, 40);
        g.DrawString("Hello, World", textFont, Brushes.Green, 350, 240);
    }
    private void InitializeComponent() {
        this.SuspendLayout();
        this.AutoScroll = true;
        this.AutoScrollMinSize = new System.Drawing.Size(600, 400);
        this.BackColor = System.Drawing.SystemColors.Window;
        this.Paint += new System.Windows.Forms.PaintEventHandler(this.ScrollingText_Paint);
        this.ResumeLayout(false);
    }
}
public class Form1 : Form {
    public Form1() {
        InitializeComponent();
    }
    private void InitializeComponent() {
        this.scrollingText1 = new ScrollingText();
        this.SuspendLayout();
        this.scrollingText1.AutoScroll = true;
        this.scrollingText1.AutoScrollMinSize = new System.Drawing.Size(600, 400);
        this.scrollingText1.BackColor = System.Drawing.SystemColors.Window;
        this.scrollingText1.Location = new System.Drawing.Point(13, 13);
        this.scrollingText1.Size = new System.Drawing.Size(267, 243);
        this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F);
        this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
        this.ClientSize = new System.Drawing.Size(292, 268);
        this.Controls.Add(this.scrollingText1);
        this.ResumeLayout(false);
    }
    private ScrollingText scrollingText1;
    [STAThread]
    static void Main() {
        Application.EnableVisualStyles();
        Application.Run(new Form1());
    }
}

 








Related examples in the same category

1.Panel and form dock padPanel and form dock pad
2.Split Container(Panel): CollapsedSplit Container(Panel): Collapsed
3.Scrollable PanelScrollable Panel
4.Scrolling Picture