Hi, I'm trying to use a combobox in a grid like in the exaple here: http://demos.telerik.com/aspnet-ajax/combobox/examples/functionality/comboingrid/defaultcs.aspx?product=grid
The only thing is, I would like to do some formatting etc. on the combobox, so I did:
<telerik:gridtemplatecolumn uniquename="IconID" datafield="IconID" headertext="Icon">
<itemtemplate>
<asp:image id="imgIcon" runat="server" />
</itemtemplate>
<edititemtemplate>
<telerik:RadComboBox
ID="rcbIcon"
runat="server" />
</edititemtemplate>
</telerik:gridtemplatecolumn>
And then in the codebehind:
#Region "rgCategories_ItemDataBound"
Protected Sub rgCategories_ItemDataBound(ByVal sender As Object, ByVal e As Telerik.Web.UI.GridItemEventArgs) Handles rgCategories.ItemDataBound
If e.Item.ItemType = GridItemType.Item Or e.Item.ItemType = GridItemType.AlternatingItem Then
Dim objCategoryInfo As CategoryInfo = CType(e.Item.DataItem, CategoryInfo)
If objCategoryInfo.IconID <> -1 Then
_Icon = objCategoryInfo.IconID
Dim objIcon As MarkerInfo = lstMarkerInfo.Find(AddressOf FindIcon)
If Not objIcon Is Nothing Then
Dim imgIcon As System.Web.UI.WebControls.Image = CType(e.Item.FindControl("imgIcon"), System.Web.UI.WebControls.Image)
imgIcon.ImageUrl = objIcon.MarkerFilename
End If
End If
End If
If e.Item.ItemType = GridItemType.EditItem Then
Dim comboBox As RadComboBox = DirectCast(e.Item.FindControl("RCBIcon"), RadComboBox)
comboBox.Items.Clear()
Dim objMarkerInfo As MarkerInfo
Dim itemtext As String
For Each objMarkerInfo In lstMarkerInfo
itemtext = objMarkerInfo.MarkerFilename.Replace(".png", "")
itemtext = itemtext.Remove(0, itemtext.LastIndexOf("/") + 1)
Dim item As New RadComboBoxItem()
item.Text = itemtext
item.Value = objMarkerInfo.MarkerID
item.ImageUrl = objMarkerInfo.MarkerFilename
comboBox.Items.Add(item)
Next
Dim objCategoryInfo As CategoryInfo = CType(e.Item.DataItem, CategoryInfo)
If objCategoryInfo.IconID <> -1 Then
If Not comboBox.FindItemByValue(objCategoryInfo.IconID) Is Nothing Then
comboBox.FindItemByValue(objCategoryInfo.IconID).Selected = True
End If
End If
End If
End Sub
#End Region
However when I try to update, the IconId will always be 0 instead of the selected icon from the dropdown
The only thing is, I would like to do some formatting etc. on the combobox, so I did:
<telerik:gridtemplatecolumn uniquename="IconID" datafield="IconID" headertext="Icon">
<itemtemplate>
<asp:image id="imgIcon" runat="server" />
</itemtemplate>
<edititemtemplate>
<telerik:RadComboBox
ID="rcbIcon"
runat="server" />
</edititemtemplate>
</telerik:gridtemplatecolumn>
And then in the codebehind:
#Region "rgCategories_ItemDataBound"
Protected Sub rgCategories_ItemDataBound(ByVal sender As Object, ByVal e As Telerik.Web.UI.GridItemEventArgs) Handles rgCategories.ItemDataBound
If e.Item.ItemType = GridItemType.Item Or e.Item.ItemType = GridItemType.AlternatingItem Then
Dim objCategoryInfo As CategoryInfo = CType(e.Item.DataItem, CategoryInfo)
If objCategoryInfo.IconID <> -1 Then
_Icon = objCategoryInfo.IconID
Dim objIcon As MarkerInfo = lstMarkerInfo.Find(AddressOf FindIcon)
If Not objIcon Is Nothing Then
Dim imgIcon As System.Web.UI.WebControls.Image = CType(e.Item.FindControl("imgIcon"), System.Web.UI.WebControls.Image)
imgIcon.ImageUrl = objIcon.MarkerFilename
End If
End If
End If
If e.Item.ItemType = GridItemType.EditItem Then
Dim comboBox As RadComboBox = DirectCast(e.Item.FindControl("RCBIcon"), RadComboBox)
comboBox.Items.Clear()
Dim objMarkerInfo As MarkerInfo
Dim itemtext As String
For Each objMarkerInfo In lstMarkerInfo
itemtext = objMarkerInfo.MarkerFilename.Replace(".png", "")
itemtext = itemtext.Remove(0, itemtext.LastIndexOf("/") + 1)
Dim item As New RadComboBoxItem()
item.Text = itemtext
item.Value = objMarkerInfo.MarkerID
item.ImageUrl = objMarkerInfo.MarkerFilename
comboBox.Items.Add(item)
Next
Dim objCategoryInfo As CategoryInfo = CType(e.Item.DataItem, CategoryInfo)
If objCategoryInfo.IconID <> -1 Then
If Not comboBox.FindItemByValue(objCategoryInfo.IconID) Is Nothing Then
comboBox.FindItemByValue(objCategoryInfo.IconID).Selected = True
End If
End If
End If
End Sub
#End Region
However when I try to update, the IconId will always be 0 instead of the selected icon from the dropdown