Spiga

UltraWebGrid使用系列(二)

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完全一样,而且列数也要相等.

 1Private 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
93Err_handler:
94        objConn.CloseConnection()
95        strMsg = getErrMessage(Err.Description)
96        Controls.Add(New LiteralControl("<script language=javascript>alert(""" & strMsg & """)</script>"))
97    End Function

是不是觉得很简单啊,嘿嘿.
下一次讲的是WebGrid操作的属性和方法

发表回复





发表评论

姓名 [登录] [注册] 

主页

Email(仅博主可见) 

验证码 *  验证码看不清,换一张

内容(请不要发表任何与政治相关的内容)  

登录  使用高级评论   新用户注册   返回页首      


相关文章: