Protected Sub WebHierarchicalDataGrid1_RowIslandsPopulating(ByVal sender As Object, ByVal e As ContainerRowCancelEventArgs) Handles WebHierarchicalDataGrid1.RowIslandsPopulating
'デフォルトの自動ロードオンデマンド操作をキャンセルします
e.Cancel = True
' データ キーを取得します
Dim key As Integer = CInt(e.Row.DataKey(0))
Dim con As New SqlConnection("Data Source=.\sqlexpress;Initial Catalog=Northwind;Integrated Security=True")
' 親行に属するレコードのセットだけを選択するためにデータ キーを使用します
Dim com As New SqlCommand("SELECT * FROM Products Where CategoryId = @Id", con)
com.Parameters.AddWithValue("@Id", key)
' データでデータセットを埋めるためにデータ アダプタを設定します
Dim da As New SqlDataAdapter(com)
Dim products As New DataSet()
con.Open()
' データを取得します
da.Fill(products, "ProductRowIsland")
con.Close()
' コンテナ グリッドを作成します
Dim childGrid As New ContainerGrid()
e.Row.RowIslands.Add(childGrid)
' グリッドをバインドします
childGrid.DataSource = products
childGrid.DataBind()
End Sub