分享
 
 
 

VB.NET上传图片并在DataGrid中显示

王朝c#·作者佚名  2006-11-24
窄屏简体版  字體: |||超大  

一、程序功能:当上传图片大小超过8K或格式不符时禁止上传,上传通过之后,用DataGrid显示上传的图片

二、建立数据库

在MSSQL的NorthWind数据库中新建一个users表,表设计如下:

列名

数据类型

长度

是否可以为空

其它

id

int

4

主键,设标识为是,标识种子1,递增量1

headimg

varchar

50

三、窗体设计:

1、新建ASP.NET Web应用程序,命名为DataGrid3,保存路径为http://192.168.0.1/DataGrid3(注:我机子上的网站的IP是192.168.0.1的主目录是D:\web文件夹)然后点击确定。

2、在解决方案资源管理器窗口中,将WebForm1.aspx重命名为UpPicture.aspx,然后从工具箱中向窗体添加一个Label控件、一个BUtton按钮.然后从一个HTML工具箱中向窗体添加一个File field控件窗体界面如下:

3、在解决方案资源管理器窗口中右击项目,选择添加-新项-Web窗体,名称设为ViewPicture.aspx。然后在打开的窗体中添加一个DataGrid控件。

4、右击DataGrid控件,再点击下方的“属性生成器”,打开“DataGrid属性窗口”。在“DataGrid属性窗口”点击“列”,取消“在运行时自动创建列”前的对勾,向选定的列中添加一个绑定列,在页眉文本中输入“序号”,在数据字段中输入ID。再向选定的列中添加一个绑定列,在页眉文本中输入“头像”,在数据字段中输入headimg。然后点击确定。

窗体界面如下;

四、代码设计:

1、UpPicture.aspx

Imports System.Data.SqlClient

Public Class WebForm1

Inherits System.Web.UI.Page

'窗体代码省略

'上传图片

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

Dim img As String

'定义postedfile文件是储存用户上载的文件

Dim postedfile As HttpPostedFile = File1.PostedFile

'定义一个变量储存用户上载文件的大小

Dim intImgSize As Int32

'获取用户上传文件的大小,

intImgSize = postedfile.ContentLength

'如果要上传的文件不为空

If intImgSize <> 0 Then

'如果大于8K, 则禁止上传

If intImgSize > 8000 Then

Label1.Text = "图片太大"

Exit Sub

End If

'定义一个变量储存用户上传图片的文件类型

Dim strImgType As String = postedfile.ContentType

'只接受.gif格式的图片

Dim filesplit() As String = Split(strImgType, "/")

strImgType = filesplit(filesplit.Length - 1)

If strImgType <> "gif" Then

Label1.Text = "图片格式不对"

Exit Sub

End If

'储存要上传的文件的整个路径

filesplit = Split(postedfile.FileName, "\")

'取得上传文件的文件名

Dim filename As String = filesplit(filesplit.Length - 1)

'将上传的图片保存到服务器当前目录的headimg文件夹中

postedfile.SaveAs(Server.MapPath("headimg") & "\" & filename)

'定义一个变量储存服务器上当前上传图片的路径

Dim imgpath As String = "headimg\" & filename

img = "<img src=" & imgpath & " border=0>"

'将图片储存到数据库

Dim scon As New SqlConnection("server=localhost;database=northwind;uid=sa;pwd=123")

scon.Open()

Dim scom As New SqlCommand("insert into users values (@img)", scon)

scom.Parameters.Add("@img", SqlDbType.VarChar).Value = img

Try

scom.ExecuteNonQuery()

Catch ex As Exception

End Try

scon.Close()

'转到查看图片窗口

Response.Redirect("ViewPicture.aspx")

End If

End Sub

End Class

2、ViewPicture.aspx代码:

Imports System.Data.SqlClient

Public Class ViewPicture

Inherits System.Web.UI.Page

‘窗体代码省略

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

Dim scon As New SqlConnection("server=localhost;database=northwind;uid=sa;pwd=123")

Dim sda As New SqlDataAdapter("select * from users", scon)

Dim ds As New DataSet

Try

sda.Fill(ds)

Catch ex As Exception

End Try

DataGrid1.DataSource = ds

DataGrid1.DataBind()

End Sub

End Class

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有