I need a dropdown list column with a different datasource for each detail table, so I am programmatically adding a new column to each DetailTable when it gets databound. The column gets added but has no values in view/edit mode. Any ideas why the following code fails to populate the values?
| Private Sub radgrid1_DetailTableDataBind(ByVal source As Object, ByVal e As Telerik.Web.UI.GridDetailTableDataBindEventArgs) Handles radgrid1.DetailTableDataBind |
| If e.DetailTableView.Name = "DetailTable2" Then |
| Dim dropdownColumn As New Telerik.Web.UI.GridDropDownColumn() |
| dropdownColumn.HeaderText = "Test" |
| dropdownColumn.UniqueName = "dropdownColumn" |
| dropdownColumn.DropDownControlType = GridDropDownColumnControlType.DropDownList |
| e.DetailTableView.Columns.Insert(2, dropdownColumn) |
| End If |
| End Sub |
| Private Sub radgrid1_ItemCreated(ByVal sender As Object, ByVal e As Telerik.Web.UI.GridItemEventArgs) Handles radgrid1.ItemCreated |
| If e.Item.OwnerTableView.Name = "DetailTable2" Then |
| If TypeOf e.Item Is GridEditableItem Then |
| Dim item As GridEditableItem = DirectCast(e.Item, GridEditableItem) |
| Dim dropdownColumn As GridDropDownColumn = DirectCast(item.OwnerTableView.Columns(2), GridDropDownColumn) |
| Dim data As New Dictionary(Of String, String) |
| data.Add("A", "A") |
| data.Add("B", "B") |
| dropdownColumn.FillValues(data, item) |
| End If |
| End If |
| End Sub |