CodePanic! > C#.NET Tips > 今ここ
■コントロールを自動整列する
FlowLayoutPanelを利用すれば
コントロールをパネル上で自動整列させることが可能です。
例として画像をサムネイルっぽく表示させてみます。
パネル上のコントロールは
Controlsコレクションで管理されています。
フォームをリサイズすると、それに追従して中のコントロールも自動整列されます。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
// レイアウトパネルをFormいっぱいに広げる
flowLayoutPanel1.Dock = DockStyle.Fill;
// 10個のPictureBoxを追加し、サムネイルのように表示
for (int i = 0; i < 10; i++)
{
// 追加するPictureBoxを生成
PictureBox pbox = new PictureBox();
Bitmap bmp = new Bitmap(@"c:\hp\image\download.png");
pbox.Image = bmp;
// PictureBoxを追加
flowLayoutPanel1.Controls.Add(pbox);
}
}
}
}
Copyright © 2008.07 - shougo suzaki
|