2009/12/14(Mon) 22:14:10 編集(投稿者)
■No44615 (gtk2k さん) に返信
> その行にブレークポイントを設定し、e.Row.DataItemの内部の型なんであるかを見てみないとわからん
gtk2kさん、For i As Integer = 1 To CType(e.Row.DataItem, Data.DataRowView).Row.Table.Columns.Count - 1
で、GridViewの列数が取得でき、4つの「一郎」が強調表示されるようになりましたので
報告します。ありがとうございました。
インテリセンスで「すべての候補」を選択することで「DataRowView」が表示されました。
以下、正しく動いたコードです。
Protected Sub GridView1_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs)
If e.Row.RowType = DataControlRowType.DataRow Then
If e.Row.RowIndex = Me.GridView1.EditIndex Then Return
'For i As Integer = 1 To e.Row.Cells.Count - 2
For i As Integer = 1 To CType(e.Row.DataItem, Data.DataRowView).Row.Table.Columns.Count - 1
Dim dumLabel As Label = e.Row.FindControl("Label" & i)
dumLabel.Text = dumLabel.Text.Replace("一郎", "<B Style='background-color:#fff495'>一郎</B>")
Next
End If
End Sub