首先:創建為Page_Load事件編寫數據綁定的代碼:
<%@ Page Language="<a href="http://dev.21tx.com/language/vb/" target="_blank">VB</a>" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClIEnt" %>
<p>
<script runat="server">
Sub Page_Load(Sender As Object, E As EventArgs)
Dim myConnectionString As String = "Data Source=.;Initial Catalog=NorthWind;User Id=sa;PassWord=;"
Dim myConnection As SqlConnection = new SqlConnection(myConnectionString)
Dim myCommand As SqlCommand = New SqlCommand("select * from CategorIEs", myConnection)
Dim myDataReader As SqlDataReader
Try
myConnection.Open()
myDataReader = myCommand.ExecuteReader(CommandBehavior.CloseConnection)
my<a href="http://dev.21tx.com/dotnet/ASPnet/datagrid/" target="_blank">DataGrid</a>.DataSource = myDataReader
myDataGrid.DataBind()
Catch myException As Exception
Response.Write("數據錯誤:" & myException.ToString())
Finally
If Not myDataReader Is Nothing Then
myDataReader.Close()
End If
End Try
End Sub
其次:創建OnItemDataBound事件,在OnItemDataBound事件中,我們可以對DataGrid中每行進行數據綁定時進行檢測。這裡我們只添加Footer部分的內容,因此,我們只檢測DataGrid中的Footer部分。下面是 DataGrid中幾種ItemTypes類型。
Item Type Description
Header DataGrid控件的Heading部分
Footer DataGrid控件的Footer部分
Item DataGrid控件中每個條目
AlternatingItem DataGrid控件的alternating條目
SelectedItem DataGrid控件的selected條目
EditItem DataGrid控件的可編輯條目
Separator DataGrid控件每個條目之間的分割部分
Pager DataGrid控件的page selection部分
最後:一旦我們檢測到當前是Footer部分,就可以添加我們的動態內容。這裡我在第二列添加一個鏈接。
Public Sub myDataGrid_ItemDataBound(sender As Object,e As DataGridItemEventArgs)
'只有類型為footer的時候進行執行
If(e.Item.ItemType = ListItemType.Footer )
Dim myHy<a href="http://dev.21tx.com/web/perl/" target="_blank">Perl</a>ink As HyperLink = new HyperLink()
If Not Request.QueryString("id") = Nothing Then
myHyperLink.Text = "添加內容"
myHyperLink.NavigateURL = "adddetail.<a href="http://dev.21tx.com/web/asp/" target="_blank">ASP</a>x?id=" & Request.QueryString("id")
Else
myHyperLink.Text = "沒有添加內容"
End If
'Cells從0開始
e.Item.Cells(1).Controls.Add(myHyperLink)
End If
End Sub
</script>
下面是ASPx頁面部分:
<Html>
<head>
</head>
<body>
<form runat="server">
<ASP:datagrid id="myDataGrid"
runat="server"
showfooter="true"
onitemdatabound="myDataGrid_ItemDataBound"
enablevIEwstate="false">
</ASP:datagrid>
</form>
</body>
</Html>