本文整理汇总了C#中System.Windows.Forms.Panel类的典型用法代码示例。如果您正苦于以下问题:C# Panel类的具体用法?C# Panel怎么用?C# Panel使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
Panel类属于System.Windows.Forms命名空间,在下文中一共展示了Panel类的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: new Panel()
//引入命名空间
using System;
using System.Drawing;
using System.Drawing.Imaging;
using System.IO;
using System.Windows.Forms;
class ClipViewAll : Form {
Panel panelDisplay, panelButtons;
RadioButton radioChecked;
string[] astrFormatsSave = new string[0];
public static void Main() {
Application.Run(new ClipViewAll());
}
public ClipViewAll() {
panelDisplay = new Panel();
panelDisplay.Parent = this;
panelDisplay.Dock = DockStyle.Fill;
panelDisplay.Paint += new PaintEventHandler(PanelOnPaint);
panelDisplay.BorderStyle = BorderStyle.Fixed3D;
Splitter split = new Splitter();
split.Parent = this;
split.Dock = DockStyle.Left;
panelButtons = new Panel();
panelButtons.Parent = this;
panelButtons.Dock = DockStyle.Left;
panelButtons.AutoScroll = true;
panelButtons.Width = Width / 2;
Timer timer = new Timer();
timer.Interval = 1000;
timer.Tick += new EventHandler(TimerOnTick);
timer.Enabled = true;
}
void TimerOnTick(object obj, EventArgs ea) {
IDataObject data = Clipboard.GetDataObject();
string[] astrFormats = data.GetFormats();
bool bUpdate = false;
if (astrFormats.Length != astrFormatsSave.Length)
bUpdate = true;
else {
for (int i = 0; i < astrFormats.Length; i++)
if (astrFormats[i] != astrFormatsSave[i]) {
bUpdate = true;
break;
}
}
panelDisplay.Invalidate();
if (!bUpdate)
return;
astrFormatsSave = astrFormats;
panelButtons.Controls.Clear();
Graphics grfx = CreateGraphics();
EventHandler eh = new EventHandler(RadioButtonOnClick);
int cxText = AutoScaleBaseSize.Width;
int cyText = AutoScaleBaseSize.Height;
for (int i = 0; i < astrFormats.Length; i++) {
RadioButton radio = new RadioButton();
radio.Parent = panelButtons;
radio.Text = astrFormats[i];
if (!data.GetDataPresent(astrFormats[i], false))
radio.Text += "*";
try {
object objClip = data.GetData(astrFormats[i]);
radio.Text += " (" + objClip.GetType() + ")";
} catch {
radio.Text += " (Exception on GetData or GetType!)";
}
radio.Tag = astrFormats[i];
radio.Location = new Point(cxText, i * 3 * cyText / 2);
radio.Size = new Size((radio.Text.Length + 20) * cxText,
3 * cyText / 2);
radio.Click += eh;
}
grfx.Dispose();
radioChecked = null;
}
void RadioButtonOnClick(object obj, EventArgs ea) {
radioChecked = (RadioButton)obj;
panelDisplay.Invalidate();
}
void PanelOnPaint(object obj, PaintEventArgs pea) {
Panel panel = (Panel)obj;
Graphics grfx = pea.Graphics;
Brush brush = new SolidBrush(panel.ForeColor);
if (radioChecked == null)
return;
IDataObject data = Clipboard.GetDataObject();
object objClip = data.GetData((string)radioChecked.Tag);
if (objClip == null)
return;
else if (objClip.GetType() == typeof(string)) {
grfx.DrawString((string)objClip, Font, brush,
panel.ClientRectangle);
} else if (objClip.GetType() == typeof(string[])) // FileDrop
{
string str = string.Join("\r\n", (string[])objClip);
grfx.DrawString(str, Font, brush, panel.ClientRectangle);
} else if (objClip.GetType() == typeof(Bitmap) ||
objClip.GetType() == typeof(Metafile) ||
objClip.GetType() == typeof(Image)) {
grfx.DrawImage((Image)objClip, 0, 0);
} else if (objClip.GetType() == typeof(MemoryStream)) {
Stream stream = (Stream)objClip;
byte[] abyBuffer = new byte[16];
long lAddress = 0;
int iCount;
Font font = new Font(FontFamily.GenericMonospace,
Font.SizeInPoints);
float y = 0;
while ((iCount = stream.Read(abyBuffer, 0, 16)) > 0) {
lAddress += 16;
}
}
}
}
示例2: CreateMyPanel
public void CreateMyPanel()
{
Panel panel1 = new Panel();
TextBox textBox1 = new TextBox();
Label label1 = new Label();
// Initialize the Panel control.
panel1.Location = new Point(56,72);
panel1.Size = new Size(264, 152);
// Set the Borderstyle for the Panel to three-dimensional.
panel1.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
// Initialize the Label and TextBox controls.
label1.Location = new Point(16,16);
label1.Text = "label1";
label1.Size = new Size(104, 16);
textBox1.Location = new Point(16,32);
textBox1.Text = "";
textBox1.Size = new Size(152, 20);
// Add the Panel control to the form.
this.Controls.Add(panel1);
// Add the Label and TextBox controls to the Panel.
panel1.Controls.Add(label1);
panel1.Controls.Add(textBox1);
}