c# flowLayoutPanel PictureBox 控件 动态生成

c# flowLayoutPanel PictureBox 控件 动态生成

通过flowLayoutPanel控件可以实现自动排版。

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace demo
{
public partial class FormMain : Form
{
public FormMain()
{
InitializeComponent();
}
/// <summary>
/// 动态添加图像控件
/// </summary>
private void AddPicControl()
{
PictureBox pic = new PictureBox();
// 设置图像相关属性及事件
pic.Name = string.Format("pic{0}", flowLayoutPanel1.Controls.Count);//Name属性
pic.Width = 100; //Size-Width
pic.Height = 100; //Size-Height
pic.BorderStyle = BorderStyle.FixedSingle; // 边框样式:单线边
pic.SizeMode = PictureBoxSizeMode.Zoom; // 设置图像SizeMode=Zoom
pic.Cursor = Cursors.Hand; // 鼠标悬浮样式:小手
// 向容器中添加一个图像控件
flowLayoutPanel1.Controls.Add(pic);
}
/// <summary>
/// 根据数组动态添加图像控件
/// </summary>
private void MakePicControl()
{
int count = 0;
PictureBox[] pic;
count = 10;
pic = new PictureBox[count];
for (int i = 0; i < count; i++)
{
pic[i] = new System.Windows.Forms.PictureBox();
pic[i].Width = 100; //Size-Width
pic[i].Height = 100; //Size-Height
pic[i].BorderStyle = BorderStyle.FixedSingle;
//pic[i].Location = new Point(50 + i * 110, 100);
pic[i].SizeMode = PictureBoxSizeMode.Zoom;
pic[i].Image = Image.FromFile(@"img\" + (i + 1) + ".png");
flowLayoutPanel1.Controls.Add(pic[i]);
}
}
/// <summary>
/// 测试
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnTest_Click(object sender, EventArgs e)
{
// flowLayoutPanel添加滚动条
flowLayoutPanel1.AutoScroll = true;
AddPicControl();
}
/// <summary>
/// 批量添加
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnMore_Click(object sender, EventArgs e)
{
// flowLayoutPanel添加滚动条
flowLayoutPanel1.AutoScroll = true;
MakePicControl();
}
}
}
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace demo { public partial class FormMain : Form { public FormMain() { InitializeComponent(); } /// <summary> /// 动态添加图像控件 /// </summary> private void AddPicControl() { PictureBox pic = new PictureBox(); // 设置图像相关属性及事件 pic.Name = string.Format("pic{0}", flowLayoutPanel1.Controls.Count);//Name属性 pic.Width = 100; //Size-Width pic.Height = 100; //Size-Height pic.BorderStyle = BorderStyle.FixedSingle; // 边框样式:单线边 pic.SizeMode = PictureBoxSizeMode.Zoom; // 设置图像SizeMode=Zoom pic.Cursor = Cursors.Hand; // 鼠标悬浮样式:小手 // 向容器中添加一个图像控件 flowLayoutPanel1.Controls.Add(pic); } /// <summary> /// 根据数组动态添加图像控件 /// </summary> private void MakePicControl() { int count = 0; PictureBox[] pic; count = 10; pic = new PictureBox[count]; for (int i = 0; i < count; i++) { pic[i] = new System.Windows.Forms.PictureBox(); pic[i].Width = 100; //Size-Width pic[i].Height = 100; //Size-Height pic[i].BorderStyle = BorderStyle.FixedSingle; //pic[i].Location = new Point(50 + i * 110, 100); pic[i].SizeMode = PictureBoxSizeMode.Zoom; pic[i].Image = Image.FromFile(@"img\" + (i + 1) + ".png"); flowLayoutPanel1.Controls.Add(pic[i]); } } /// <summary> /// 测试 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnTest_Click(object sender, EventArgs e) { // flowLayoutPanel添加滚动条 flowLayoutPanel1.AutoScroll = true; AddPicControl(); } /// <summary> /// 批量添加 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnMore_Click(object sender, EventArgs e) { // flowLayoutPanel添加滚动条 flowLayoutPanel1.AutoScroll = true; MakePicControl(); } } }
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace demo
{
    public partial class FormMain : Form
    {
        public FormMain()
        {
            InitializeComponent();
        }

        /// <summary>
        /// 动态添加图像控件
        /// </summary>
        private void AddPicControl()
        {
            PictureBox pic = new PictureBox();
            // 设置图像相关属性及事件
            pic.Name = string.Format("pic{0}", flowLayoutPanel1.Controls.Count);//Name属性
            pic.Width = 100; //Size-Width
            pic.Height = 100; //Size-Height
            pic.BorderStyle = BorderStyle.FixedSingle; // 边框样式:单线边
            pic.SizeMode = PictureBoxSizeMode.Zoom; // 设置图像SizeMode=Zoom
            pic.Cursor = Cursors.Hand; // 鼠标悬浮样式:小手
            // 向容器中添加一个图像控件
            flowLayoutPanel1.Controls.Add(pic);
        }

        /// <summary>
        /// 根据数组动态添加图像控件
        /// </summary>
        private void MakePicControl()
        {
            int count = 0;
            PictureBox[] pic;
            count = 10;
            pic = new PictureBox[count];
            for (int i = 0; i < count; i++)
            {
                pic[i] = new System.Windows.Forms.PictureBox();
                pic[i].Width = 100; //Size-Width
                pic[i].Height = 100; //Size-Height
                pic[i].BorderStyle = BorderStyle.FixedSingle;
                //pic[i].Location = new Point(50 + i * 110, 100);
                pic[i].SizeMode = PictureBoxSizeMode.Zoom;
                pic[i].Image = Image.FromFile(@"img\" + (i + 1) + ".png");
                flowLayoutPanel1.Controls.Add(pic[i]);
            }
        }

        /// <summary>
        /// 测试
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnTest_Click(object sender, EventArgs e)
        {
            // flowLayoutPanel添加滚动条
            flowLayoutPanel1.AutoScroll = true;

            AddPicControl();
        }

        /// <summary>
        /// 批量添加
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnMore_Click(object sender, EventArgs e)
        {
            // flowLayoutPanel添加滚动条
            flowLayoutPanel1.AutoScroll = true;

            MakePicControl();
        }
    }
}

 

发表回复

您的电子邮箱地址不会被公开。