- - PR -
Template
1
投稿者 | 投稿内容 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2003-10-07 16:04
今、DataGridにテンプレートを追加し、そこにHyperLinkをセットしました。
DataTbleをbindしたとき、下記の関数の中で HyperLinkのNavigationUrlを指定したいのですが、どうしたらよいでしょうか? Private Sub DataGrid1_ItemDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DataGridItemEventArgs) Handles DataGrid1.ItemDataBound 'ここをどう記述したらよいのでしょうか? e.Item.Cells(0).FindControl("HyperLink") End Sub | ||||||||||||
|
投稿日時: 2003-10-07 16:12
Dim objHyper As HyperLink = New HyperLink()
objHyper = e.Item.FindControl("HyperLink") objHyper.NavigateUrl = "http://www.yahoo.co.jp" objHyper.Text = "yahoo" このようにやってみたのですが、 "オブジェクト参照がオブジェクト インスタンスに設定されていません。" というメッセージが出力されてしまいます。 | ||||||||||||
|
投稿日時: 2003-10-07 17:18
これで如何でしょうか?
| ||||||||||||
|
投稿日時: 2003-10-09 12:19
下記の様にやってみましたが、結果は同じでした。
Private Sub DataGrid1_ItemDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DataGridItemEventArgs) Handles DataGrid1.ItemDataBound Dim objHyper As HyperLink If e.Item.ItemType = ListItemType.Header Then ElseIf e.Item.ItemType = ListItemType.Item Xor e.Item.ItemType = ListItemType.AlternatingItem Then Dim sUrl As String = "http://www.yahoo.co.jp" If e.Item.ItemIndex >= 0 Then objHyper = e.Item.FindControl("HyperLink") objHyper.NavigateUrl = sUrl objHyper.Text = "yahoo" End If End If End Sub
| ||||||||||||
|
投稿日時: 2003-10-09 12:23
FindControlの引数にはHyperLinkのIDを設定するべきなのですが
違うIDをセットしていたため、下記メッセージが表示されていました。 単純なミスでした。 すみませんでした。
|
1