在SQL上有一个表[T - image]用来保存货品的英文和中文图解,并不是每一种货品都有图解,内有字段:图片ID,货品名,图片格式(Chinese or English),日期等...
在网页页面上做一个DropDownList 和一个 ListBox 两个控件,DropDownList 数据来源[T - 货品detail]的[货品名]字段。
当在DropDownList中选取某一货品名后,查找[T - image]中是否存在这个货品名,没有的话提示没有.如果存在的话有查找这个货品名有哪种格式的图片,有中文图的就在 listbox 上显示 Chinese , 有英文的就显示 English。并把图片ID记录在photo_CN和photot_EN两个变量中。每次选取都会触发这个事件。
另外在listbox上显示的Chinese,English,当我双击其中一条就会按变量中的图片ID查找并打开显示图片。Partial Class _Default
Inherits System.Web.UI.Page
'在DropDowList选项改变时,找对应的图片类型和ID绑定到ListBox上
Protected Sub Chemical_SelectedIndexChanged(ByVal sender As Object, ByVal e As EventArgs)
'listboxBinding(Me.Chemical.SelectedItem.Text) Dim con As New Data.SqlClient.SqlConnection(connStr)
Try
Dim da As New Data.SqlClient.SqlDataAdapter("select [PhotoID], [Type] from [T - image] where [Chemical]='" & Me.Chemical.SelectedValue.ToString & " '", con)
Dim dt As New Data.DataTable()
da.Fill(dt)
ListBox1.DataSource = dt
ListBox1.DataTextField = "Type"
ListBox1.DataValueField = "PhotoID"
Finally
con.Dispose()
End Try
End Sub 'DropDownList1_SelectedIndexChanged'ListBox选项改变时,根据选中的值找到它的图片地址以显示
Protected Sub ListBox1_SelectedIndexChanged(ByVal sender As Object, ByVal e As EventArgs)
Me.Image1.ImageUrl = getImageUrlById(Convert.ToInt32(Me.ListBox1.SelectedValue))
End Sub 'ListBox1_SelectedIndexChanged
'数据库连接字符串
Private connStr As String = "data source =10.10;User Id=sa; Password=1234; Initial Catalog=Chemical"Private Sub listboxBinding(ByVal goodsName As String)
Dim con As New Data.SqlClient.SqlConnection(connStr)
Try
Dim da As New Data.SqlClient.SqlDataAdapter("select [PhotoID], [Type] from [T - image] where [Chemical]='" & Me.Chemical.SelectedValue.ToString & " '", con)
Dim dt As New Data.DataTable()
da.Fill(dt)
ListBox1.DataSource = dt
ListBox1.DataTextField = "Type"
ListBox1.DataValueField = "PhotoID"
Finally
con.Dispose()
End Try
End Sub 'listboxBinding
Private Function getImageUrlById(ByVal photoID As Integer) As String
Dim con As New Data.SqlClient.SqlConnection(connStr)
Try
Dim com As New Data.SqlClient.SqlCommand("select [Image_Master] from [T - image] where [PhotoID]=" + photoID.ToString(), con)
con.Open()
Dim dr As Data.SqlClient.SqlDataReader = com.ExecuteReader()
If dr.Read() Then
Return dr.GetString(0)
Else
Return String.Empty
End If
Finally
con.Dispose()
End Try
End Function 'getImageUrlById
End Class现在连DropDowList选项改变时,找对应的图片类型和ID绑定到ListBox上也没法实现,我不太会VB语法~希望各位帮帮忙
在网页页面上做一个DropDownList 和一个 ListBox 两个控件,DropDownList 数据来源[T - 货品detail]的[货品名]字段。
当在DropDownList中选取某一货品名后,查找[T - image]中是否存在这个货品名,没有的话提示没有.如果存在的话有查找这个货品名有哪种格式的图片,有中文图的就在 listbox 上显示 Chinese , 有英文的就显示 English。并把图片ID记录在photo_CN和photot_EN两个变量中。每次选取都会触发这个事件。
另外在listbox上显示的Chinese,English,当我双击其中一条就会按变量中的图片ID查找并打开显示图片。Partial Class _Default
Inherits System.Web.UI.Page
'在DropDowList选项改变时,找对应的图片类型和ID绑定到ListBox上
Protected Sub Chemical_SelectedIndexChanged(ByVal sender As Object, ByVal e As EventArgs)
'listboxBinding(Me.Chemical.SelectedItem.Text) Dim con As New Data.SqlClient.SqlConnection(connStr)
Try
Dim da As New Data.SqlClient.SqlDataAdapter("select [PhotoID], [Type] from [T - image] where [Chemical]='" & Me.Chemical.SelectedValue.ToString & " '", con)
Dim dt As New Data.DataTable()
da.Fill(dt)
ListBox1.DataSource = dt
ListBox1.DataTextField = "Type"
ListBox1.DataValueField = "PhotoID"
Finally
con.Dispose()
End Try
End Sub 'DropDownList1_SelectedIndexChanged'ListBox选项改变时,根据选中的值找到它的图片地址以显示
Protected Sub ListBox1_SelectedIndexChanged(ByVal sender As Object, ByVal e As EventArgs)
Me.Image1.ImageUrl = getImageUrlById(Convert.ToInt32(Me.ListBox1.SelectedValue))
End Sub 'ListBox1_SelectedIndexChanged
'数据库连接字符串
Private connStr As String = "data source =10.10;User Id=sa; Password=1234; Initial Catalog=Chemical"Private Sub listboxBinding(ByVal goodsName As String)
Dim con As New Data.SqlClient.SqlConnection(connStr)
Try
Dim da As New Data.SqlClient.SqlDataAdapter("select [PhotoID], [Type] from [T - image] where [Chemical]='" & Me.Chemical.SelectedValue.ToString & " '", con)
Dim dt As New Data.DataTable()
da.Fill(dt)
ListBox1.DataSource = dt
ListBox1.DataTextField = "Type"
ListBox1.DataValueField = "PhotoID"
Finally
con.Dispose()
End Try
End Sub 'listboxBinding
Private Function getImageUrlById(ByVal photoID As Integer) As String
Dim con As New Data.SqlClient.SqlConnection(connStr)
Try
Dim com As New Data.SqlClient.SqlCommand("select [Image_Master] from [T - image] where [PhotoID]=" + photoID.ToString(), con)
con.Open()
Dim dr As Data.SqlClient.SqlDataReader = com.ExecuteReader()
If dr.Read() Then
Return dr.GetString(0)
Else
Return String.Empty
End If
Finally
con.Dispose()
End Try
End Function 'getImageUrlById
End Class现在连DropDowList选项改变时,找对应的图片类型和ID绑定到ListBox上也没法实现,我不太会VB语法~希望各位帮帮忙
尤其是SQL SERVER