2007-03-06 15:18
by
BoyLee,
2146
visits,
网摘,
编辑
原创文章,转载请注明出处
作者: BoyLee 出处:
Http://BoyLee.net
上一章 讲了WebGrid的建立.这次到大家都关心的问题啦
如果不绑定数据,那么再漂亮,再好的Grid也没用,也只显示一句"表示するデータがありません"而已
其实WebGrid的数据绑定很简单,只要设置一个和Grid列数相同的DataTable就OK了
DataTable中的数据OK后,和DataGrid/GridView一样,就是xxx.databind()就可以了
不过和DataGrid/GridView不同的是,WebGrid是自动绑定的,不用设置
所以DataTable列对应的顺序一定要和WebGrid完全一样,而且列数也要相等.
1
Private Function DisplayCustomersList()Function DisplayCustomersList(ByVal strItemCode As String)
2
On Error GoTo Err_handler
3
Dim objConn As New clsAdoNetSql
4
Dim rdrCus As SqlDataReader
5
Dim strSQL As String
6
Dim tblCus As New DataTable
7
Dim rowTemp As DataRow
8
Dim intI As Int32
9
10
strSQL = " SELECT F.CUSTOMERS_CODE, "
11
strSQL &= " F.FAMILY_NAME, "
12
strSQL &= " F.ONES_NAME, "
13
strSQL &= " F.FAMILY_NAME_KANA, "
14
strSQL &= " F.ONES_NAME_KANA, "
15
strSQL &= " F.TELEPHONE_NUMBER, "
16
strSQL &= " F.POSTAL_CODE1, "
17
strSQL &= " F.POSTAL_CODE2, "
18
strSQL &= " F.PREFECTURES_CODE, "
19
strSQL &= " F.ADDRESS1, "
20
strSQL &= " F.ADDRESS2 "
21
strSQL &= " FROM CT_CUSTOMERS_BASIC F, "
22
strSQL &= " CT_ACTION_RECORD A, "
23
strSQL &= " CT_EVENT_CUSTOMERS B "
24
strSQL &= " WHERE B.EVENT_NAME=A.ACTION_ITEMS_TITLE "
25
strSQL &= " AND A.ACTION_RECORD_CODE='" & strItemCode & "'"
26
strSQL &= " AND F.CUSTOMERS_CODE=B.CUSTOMERS_CODE"
27
rdrCus = objConn.RunQueryCmd(strSQL)
28
29
With tblCus.Columns
30
.Add(New DataColumn("CUSTOMERS_CODE", GetType(String)))
31
.Add(New DataColumn("ATTEND_DATE", GetType(String))) '来場日
32
.Add(New DataColumn("CUSTOMERS_FIRST_NAME", GetType(String)))
33
.Add(New DataColumn("CUSTOMERS_LAST_NAME", GetType(String)))
34
.Add(New DataColumn("CUSTOMERS_FIRST_NAME_KANA", GetType(String)))
35
.Add(New DataColumn("CUSTOMERS_LAST_NAME_KANA", GetType(String)))
36
.Add(New DataColumn("TEL_NUMBER", GetType(String)))
37
.Add(New DataColumn("POSTAL_CODE1", GetType(String)))
38
.Add(New DataColumn("POSTAL_CODE2", GetType(String)))
39
.Add(New DataColumn("BTN_SEARCH"))
40
.Add(New DataColumn("SEL_ADDR", GetType(String)))
41
.Add(New DataColumn("ADDR1", GetType(String)))
42
.Add(New DataColumn("ADDR2", GetType(String)))
43
End With
44
tblCus.Columns(9).DefaultValue = "検索"
45
While rdrCus.Read
46
rowTemp = tblCus.NewRow
47
rowTemp("CUSTOMERS_CODE") = rdrCus("CUSTOMERS_CODE")
48
rowTemp("ATTEND_DATE") = "" '来場日
49
rowTemp("CUSTOMERS_FIRST_NAME") = rdrCus("FAMILY_NAME")
50
rowTemp("CUSTOMERS_LAST_NAME") = rdrCus("ONES_NAME")
51
rowTemp("CUSTOMERS_FIRST_NAME_KANA") = rdrCus("FAMILY_NAME_KANA")
52
rowTemp("CUSTOMERS_LAST_NAME_KANA") = rdrCus("ONES_NAME_KANA")
53
rowTemp("TEL_NUMBER") = rdrCus("TELEPHONE_NUMBER")
54
rowTemp("POSTAL_CODE1") = rdrCus("POSTAL_CODE1")
55
rowTemp("POSTAL_CODE2") = rdrCus("POSTAL_CODE2")
56
rowTemp("SEL_ADDR") = rdrCus("PREFECTURES_CODE")
57
rowTemp("ADDR1") = rdrCus("ADDRESS1")
58
rowTemp("ADDR2") = rdrCus("ADDRESS2")
59
tblCus.Rows.Add(rowTemp)
60
End While
61
rdrCus.Close()
62
objConn.CloseConnection()
63
64
' To record how many exsiting customers.
65
Me.Controls.Add(New LiteralControl("<form name=frmPara><input name=hdnEx type=hidden value=" & _
66
Me.m_ExsitCusNum.ToString & "></form>"))
67
Me.hdnEx.Value = Me.m_ExsitCusNum.ToString
68
69
' For new customers
70
rowTemp = tblCus.NewRow
71
rowTemp("CUSTOMERS_CODE") = ""
72
rowTemp("ATTEND_DATE") = ""
73
rowTemp("CUSTOMERS_FIRST_NAME") = ""
74
rowTemp("CUSTOMERS_LAST_NAME") = ""
75
rowTemp("CUSTOMERS_FIRST_NAME_KANA") = ""
76
rowTemp("CUSTOMERS_LAST_NAME_KANA") = ""
77
rowTemp("TEL_NUMBER") = ""
78
rowTemp("POSTAL_CODE1") = ""
79
rowTemp("POSTAL_CODE2") = ""
80
rowTemp("SEL_ADDR") = ""
81
rowTemp("ADDR1") = ""
82
rowTemp("ADDR2") = ""
83
tblCus.Rows.Add(rowTemp)
84
85
Me.uwgCustomer.DisplayLayout.AllowAddNewDefault = AllowAddNew.Yes
86
Me.uwgCustomer.DisplayLayout.AllowUpdateDefault = AllowUpdate.Yes
87
Me.uwgCustomer.DisplayLayout.CellClickActionDefault = CellClickAction.Edit
88
uwgCustomer.DisplayLayout.SelectTypeRowDefault = SelectType.Single
89
90
Me.uwgCustomer.DataSource = tblCus
91
Me.uwgCustomer.DataBind()
92
Exit Function
93
Err_handler:
94
objConn.CloseConnection()
95
strMsg = getErrMessage(Err.Description)
96
Controls.Add(New LiteralControl("<script language=javascript>alert(""" & strMsg & """)</script>"))
97
End Function
是不是觉得很简单啊,嘿嘿.
下一次讲的是WebGrid操作的属性和方法