グリッドビュー内のテンプレート列である radiobuttonlist の選択値を設定しようとしています。データ (ステータス) を含むデータベース フィールドに null 値が含まれているため、コード ビハインドを使用してこれを行う必要があるため、asp 側で SelectedValue='<%# Bind("Status") %>' を使用できません。
onRowDataBound を使用してこれを行い、DataItem を使用してデータソースから値を取得し、それを使用して radiobuttonlist の選択した値を設定することが提案されていますが、vb コードでこれを行う方法がわかりません。
私は次のことを試しました:
Protected Sub gv_RowDataBound(ByVal sender As Object, ByVal e As GridViewRowEventArgs)
If e.Row.RowType = DataControlRowType.DataRow Then
Dim radioList = TryCast(e.Row.FindControl("rblActions"), RadioButtonList)
' this will be the object that you are binding to the grid
Dim myObject = TryCast(e.Row.DataItem, DataRowView)
Dim sStatus As String = Convert.ToString(myObject("Status"))
If sStatus <> Nothing Then
radioList.SelectedValue = sStatus
End If
End If
End Sub
しかし、それはうまくいきません。どんな助けでも大歓迎です。ありがとう