Load کردن تصاویر موجوددر یک جدول از DataBase بر روی فرم
دوشنبه 8 تیر 1394در این مقاله قصد داریم تصاویر که در DataBase هستند را بر روی Form نمایش دهیم .
ابتدا باید یک DataBase ایجاد کرد و جدولی با نام Pic در آن ایجاد کرده و آن را با آدرسهای تصاویر مورد نظر مقدار دهی کرد :
سپس در رویداد Load فرم اطلاعات دیتا بیس را بخوانید و دریک DataTable قرار دهید :
dt.Columns.Add("Id", typeof(int)); dt.Columns.Add("FileName", typeof(string)); cmd.CommandText = "Select * from pic;"; cmd.Connection = cnc; cnc.Open(); SqlDataReader reader = cmd.ExecuteReader(); while (reader.Read()) { string id = reader[0].ToString(); dt.Rows.Add(Convert.ToInt32(id),reader[1].ToString()); } reader.Close(); cnc.Close();
در رویداد Click ، دکمه کد زیر را قرار دهید :
List<PictureBox> pictureBoxList = new List<PictureBox>(); for (int i = 0; i <dt.Rows.Count; i++) { PictureBox picture = new PictureBox { Name = "pictureBox" + i, Size = new Size(100, 150), Location = new Point(i * 150, 1), BorderStyle = BorderStyle.FixedSingle, SizeMode = PictureBoxSizeMode.Zoom }; picture.ImageLocation = dt.Rows[i]["FileName"].ToString(); pictureBoxList.Add(picture); } foreach (PictureBox p in pictureBoxList) { flowLayoutPanel1.Controls.Add(p); }
کد با در زمان اجرا به تعداد تصاویر موجود در DataBase برروی فرم PictureBox ایجاد کرده و تصویر مورد نظر را درون آن بار گذاری می کند.
تمام کد برنامه :
namespace Imagee_To_List { public partial class Form1 : Form { SqlConnection cnc = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=c:\users\ss\documents\visual studio 2010\Projects\Imagee To List\Imagee To List\pic.mdf;Integrated Security=True;User Instance=True"); SqlCommand cmd = new SqlCommand(); DataTable dt = new DataTable(); public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { List<PictureBox> pictureBoxList = new List<PictureBox>(); for (int i = 0; i <4; i++) { PictureBox picture = new PictureBox { Name = "pictureBox" + i, Size = new Size(100, 150), Location = new Point(i * 150, 1), BorderStyle = BorderStyle.FixedSingle, SizeMode = PictureBoxSizeMode.Zoom }; picture.ImageLocation = dt.Rows[i]["FileName"].ToString(); pictureBoxList.Add(picture); } foreach (PictureBox p in pictureBoxList) { flowLayoutPanel1.Controls.Add(p); } } private void Form1_Load(object sender, EventArgs e) { dt.Columns.Add("Id", typeof(int)); dt.Columns.Add("FileName", typeof(string)); cmd.CommandText = "Select * from pic;"; cmd.Connection = cnc; cnc.Open(); SqlDataReader reader = cmd.ExecuteReader(); while (reader.Read()) { string id = reader[0].ToString(); dt.Rows.Add(Convert.ToInt32(id),reader[1].ToString()); } reader.Close(); cnc.Close(); } } }
- C#.net
- 1k بازدید
- 6 تشکر