实例介绍
【实例简介】
【实例截图】
【实例截图】

【核心代码】
//FileName Form1.cs
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;
namespace DBImage
{
/// <summary>
/// Form1 的摘要说明。
/// </summary>
public class Form1 : System.Windows.Forms.Form
{
private System.Windows.Forms.ListBox listBox1;
private System.Windows.Forms.PictureBox pictureBox1;
private System.Windows.Forms.TextBox textBox1;
private System.Windows.Forms.Button button1;
private System.Windows.Forms.Button button2;
private System.Windows.Forms.Button button3;
/// <summary>
/// 必需的设计器变量。
/// </summary>
private System.ComponentModel.Container components = null;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.Button button4;
DataSet MyDataSet;
SqlConnection MySqlConn;
SqlDataAdapter MySqlAdapter;
public Form1()
{
//
// Windows 窗体设计器支持所必需的
//
InitializeComponent();
}
private void ShowDBImage()
{
byte[] bytes=(byte[])MyDataSet.Tables[0].Rows[this.listBox1.SelectedIndex][1];
MemoryStream memStream=new MemoryStream(bytes);
try
{
Bitmap MyImage = new Bitmap(memStream);
this.pictureBox1.Image= MyImage;
}
catch
{
MessageBox.Show(this,"读取数据库中的图像信息失败!","信息提示",MessageBoxButtons.OK,MessageBoxIcon.Information);
this.pictureBox1.Image=null;
}
}
/// <summary>
/// 清理所有正在使用的资源。
/// </summary>
protected override void Dispose( bool disposing )
{
if( disposing )
{
if (components != null)
{
components.Dispose();
}
}
base.Dispose( disposing );
}
#region Windows 窗体设计器生成的代码
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.listBox1 = new System.Windows.Forms.ListBox();
this.pictureBox1 = new System.Windows.Forms.PictureBox();
this.textBox1 = new System.Windows.Forms.TextBox();
this.button1 = new System.Windows.Forms.Button();
this.button2 = new System.Windows.Forms.Button();
this.button3 = new System.Windows.Forms.Button();
this.label1 = new System.Windows.Forms.Label();
this.button4 = new System.Windows.Forms.Button();
this.SuspendLayout();
//
// listBox1
//
this.listBox1.ItemHeight = 12;
this.listBox1.Location = new System.Drawing.Point(5, 24);
this.listBox1.Name = "listBox1";
this.listBox1.Size = new System.Drawing.Size(64, 76);
this.listBox1.TabIndex = 0;
this.listBox1.SelectedIndexChanged = new System.EventHandler(this.listBox1_SelectedIndexChanged);
//
// pictureBox1
//
this.pictureBox1.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
this.pictureBox1.Location = new System.Drawing.Point(80, 16);
this.pictureBox1.Name = "pictureBox1";
this.pictureBox1.Size = new System.Drawing.Size(176, 80);
this.pictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage;
this.pictureBox1.TabIndex = 1;
this.pictureBox1.TabStop = false;
//
// textBox1
//
this.textBox1.Location = new System.Drawing.Point(5, 104);
this.textBox1.Multiline = true;
this.textBox1.Name = "textBox1";
this.textBox1.Size = new System.Drawing.Size(352, 112);
this.textBox1.TabIndex = 2;
this.textBox1.Text = "textBox1";
//
// button1
//
this.button1.Location = new System.Drawing.Point(264, 8);
this.button1.Name = "button1";
this.button1.Size = new System.Drawing.Size(93, 23);
this.button1.TabIndex = 3;
this.button1.Text = "浏览图像";
this.button1.Click = new System.EventHandler(this.button1_Click);
//
// button2
//
this.button2.Location = new System.Drawing.Point(264, 32);
this.button2.Name = "button2";
this.button2.Size = new System.Drawing.Size(93, 23);
this.button2.TabIndex = 4;
this.button2.Text = "删除图像";
this.button2.Click = new System.EventHandler(this.button2_Click);
//
// button3
//
this.button3.Location = new System.Drawing.Point(264, 56);
this.button3.Name = "button3";
this.button3.Size = new System.Drawing.Size(93, 23);
this.button3.TabIndex = 5;
this.button3.Text = "保存图像";
this.button3.Click = new System.EventHandler(this.button3_Click);
//
// label1
//
this.label1.Location = new System.Drawing.Point(8, 8);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(64, 16);
this.label1.TabIndex = 6;
this.label1.Text = "选择图像:";
//
// button4
//
this.button4.Location = new System.Drawing.Point(264, 80);
this.button4.Name = "button4";
this.button4.Size = new System.Drawing.Size(93, 23);
this.button4.TabIndex = 7;
this.button4.Text = "关闭程序";
//
// Form1
//
this.AutoScaleBaseSize = new System.Drawing.Size(6, 14);
this.ClientSize = new System.Drawing.Size(360, 221);
this.Controls.Add(this.button4);
this.Controls.Add(this.label1);
this.Controls.Add(this.button3);
this.Controls.Add(this.button2);
this.Controls.Add(this.button1);
this.Controls.Add(this.textBox1);
this.Controls.Add(this.pictureBox1);
this.Controls.Add(this.listBox1);
this.MaximizeBox = false;
this.Name = "Form1";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "演示操作数据库中的图像字段";
this.Load = new System.EventHandler(this.Form1_Load);
this.ResumeLayout(false);
}
#endregion
/// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main()
{
Application.Run(new Form1());
}
private void Form1_Load(object sender, System.EventArgs e)
{
this.MySqlConn=new SqlConnection("server=COMPUTERNAME; integrated security=sspi; database=pubs");
this.MySqlAdapter=new SqlDataAdapter("select * from pub_info","server=COMPUTERNAME; integrated security=sspi; database=pubs");
SqlCommandBuilder MyBuilder=new SqlCommandBuilder(this.MySqlAdapter);
this.MySqlAdapter.UpdateCommand=MyBuilder.GetUpdateCommand();
this.MyDataSet=new DataSet();
this.MySqlAdapter.Fill(this.MyDataSet,"pub_info");
//将text1Box1的Text属性绑定到dataset中的pub_info表的pr_info字段
this.textBox1.DataBindings.Add(new Binding("Text",this.MyDataSet,"pub_info.pr_info"));
for(int i=0;i<this.MyDataSet.Tables[0].Rows.Count;i )
{
this.listBox1.Items.Add(this.MyDataSet.Tables[0].Rows[i][0]);
}
this.listBox1.SetSelected(0,true);
}
private void button1_Click(object sender, System.EventArgs e)
{//浏览图像
OpenFileDialog MyFileDialog=new OpenFileDialog();
MyFileDialog.ShowDialog();
if(MyFileDialog.FileName.Trim()!="")
{
Stream MyStream =MyFileDialog.OpenFile();
int length=(int)MyStream.Length;
byte[] bytes=new byte[length];
MyStream.Read(bytes,0,length);
MyStream.Close();
this.MyDataSet.Tables[0].Rows[this.listBox1.SelectedIndex][1]=bytes;
ShowDBImage();
}
}
private void button2_Click(object sender, System.EventArgs e)
{//删除图像
byte[] bytes =System.Text.Encoding.Unicode.GetBytes("");
int iIndex=this.listBox1.SelectedIndex;
this.MyDataSet.Tables[0].Rows[iIndex][1]=bytes;
this.listBox1.SetSelected(iIndex 1,true);
ShowDBImage();
}
private void button3_Click(object sender, System.EventArgs e)
{//保存图像
this.MySqlAdapter.Update(this.MyDataSet,"pub_info");
MessageBox.Show(this,"保存数据库中的图像操作成功!","信息提示",MessageBoxButtons.OK,MessageBoxIcon.Information);
}
private void listBox1_SelectedIndexChanged(object sender, System.EventArgs e)
{//选择图像
ShowDBImage();
this.BindingContext[this.MyDataSet,"pub_info"].Position =this.listBox1.SelectedIndex;
}
}
}
好例子网口号:伸出你的我的手 — 分享!
网友评论
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明


支持(0) 盖楼(回复)