Mega Code Archive

 
Categories / C# / ADO Database
 

Read image data from database and display that image

using System; using System.Drawing; using System.Collections; using System.ComponentModel; using System.Windows.Forms; using System.Data; using System.Data.SqlClient; using System.IO;     public class Form1 : System.Windows.Forms.Form {    private System.Windows.Forms.Button button1;    private System.Windows.Forms.TextBox textBox1;    private System.Windows.Forms.PictureBox pictureBox1;    private Images images;    private System.ComponentModel.Container components = null;    public Form1() {       InitializeComponent();       images = new Images();       if (images.GetRow()) {             this.textBox1.Text = images.GetFilename();             this.pictureBox1.Image = (Image)images.GetImage();       } else {             this.textBox1.Text = "DONE";             this.pictureBox1.Image = null;       }    }    private void InitializeComponent() {       this.button1 = new System.Windows.Forms.Button();       this.textBox1 = new System.Windows.Forms.TextBox();       this.pictureBox1 = new System.Windows.Forms.PictureBox();       this.SuspendLayout();       this.button1.Location = new System.Drawing.Point(200, 8);       this.button1.Name = "button1";       this.button1.TabIndex = 0;       this.button1.Text = "Next";       this.button1.Click += new System.EventHandler(this.button1_Click);       this.textBox1.Location = new System.Drawing.Point(24, 8);       this.textBox1.Name = "textBox1";       this.textBox1.Size = new System.Drawing.Size(144, 20);       this.textBox1.TabIndex = 1;       this.textBox1.Text = "";       this.pictureBox1.Location = new System.Drawing.Point(8, 48);       this.pictureBox1.Name = "pictureBox1";       this.pictureBox1.Size = new System.Drawing.Size(280, 208);       this.pictureBox1.TabIndex = 2;       this.pictureBox1.TabStop = false;       this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);       this.ClientSize = new System.Drawing.Size(292, 272);       this.Controls.Add(this.pictureBox1);       this.Controls.Add(this.textBox1);       this.Controls.Add(this.button1);       this.Name = "Form1";       this.Text = "Display Images";       this.ResumeLayout(false);    }    static void Main() {       Application.Run(new Form1());    }    private void button1_Click(object sender, System.EventArgs e) {       if (images.GetRow()) {          this.textBox1.Text = images.GetFilename();          this.pictureBox1.Image = (Image)images.GetImage();       } else {          this.textBox1.Text = "DONE";          this.pictureBox1.Image = null;       }    } } public class Images{    string imageFilename = null;    byte[] imageBytes = null;    SqlConnection imageConnection = null;    SqlCommand imageCommand = null;    SqlDataReader imageReader = null;    public Images() {       imageConnection = new SqlConnection("server=(local)\\SQLEXPRESS;database=MyDatabase;Integrated Security=SSPI");       imageCommand = new SqlCommand(@"select imagefile, imagedata from imagetable", imageConnection);       imageConnection.Open();       imageReader = imageCommand.ExecuteReader();    }    public Bitmap GetImage() {       MemoryStream ms = new MemoryStream(imageBytes);       Bitmap bmap = new Bitmap(ms);       return bmap;    }    public string GetFilename() {       return imageFilename;    }    public bool GetRow() {       if (imageReader.Read()) {         imageFilename = (string) imageReader.GetValue(0);         imageBytes = (byte[]) imageReader.GetValue(1);         return true;       }else {         return false;       }    }    public void EndImages() {       imageReader.Close();       imageConnection.Close();    } }