Hi there.
I am having difficulty in binding to a ddl in a datagrid when the edit button is clicked. I have tried all sorts of things and i am now pulling my hair out.
Database function:
Function getEditCategories() As System.Data.DataSet
Dim ConnectionString As String = ConfigurationSettings.AppSettings("ConnectionStrin g")
Dim dbConnection As System.Data.IDbConnection = New System.Data.OleDb.OleDbConnection(connectionString )
Dim queryString As String = "SELECT [tblCategories].* FROM [tblCategories]"
Dim dbCommand As System.Data.IDbCommand = New System.Data.OleDb.OleDbCommand
dbCommand.CommandText = queryString
dbCommand.Connection = dbConnection
Dim dataAdapter As System.Data.IDbDataAdapter = New System.Data.OleDb.OleDbDataAdapter
dataAdapter.SelectCommand = dbCommand
Dim dataSet As System.Data.DataSet = New System.Data.DataSet
dataAdapter.Fill(dataSet)
Return dataSet
End Function
The button...
Sub dgSubCategories_EditCommand(sender As Object, e As DataGridCommandEventArgs)
dgSubCategories.EditItemIndex = e.Item.Itemindex
Dim ddl as dropdownlist = CType(e.item.findcontrol("ddlEditCategories"), DropDownList)
ddl.DataSource() = getEditCategories()
ddl.DataValueField = "CategoryID"
ddl.DataTextField = "CategoryName"
ddl.DataBind()
End Sub
And finally the grid:
<asp:DataGrid id="dgSubCategories" runat="server" CellPadding="3" AutoGenerateColumns="False" OnUpdateCommand="dgSubCategories_UpdateCommand"
OnCancelCommand="dgSubCategories_CancelCommand" OnEditCommand="dgSubCategories_EditCommand" DataKeyField="SubCategoryID"
OnDeleteCommand="dgSubCategories_Delete">
<EditItemStyle backcolor="#E0E0E0"></EditItemStyle>
<Columns>
<asp:BoundColumn DataField="SubCategoryID" ReadOnly="True" HeaderText="Sub Cat ID">
<ItemStyle horizontalalign="Center"></ItemStyle>
</asp:BoundColumn>
<asp:BoundColumn DataField="SubCategoryName" HeaderText="Sub Category Name">
<ItemStyle horizontalalign="Center"></ItemStyle>
</asp:BoundColumn>
<asp:TemplateColumn HeaderText="Main Category">
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem, "CategoryName") %>
</ItemTemplate>
<EditItemTemplate>
<asp:DropDownList runat="server" id="ddlEditCategories" DataValueField="CategoryID" DataTextField="CategoryName" />
</EditItemTemplate>
</asp:TemplateColumn>
<asp:EditCommandColumn ButtonType="LinkButton" UpdateText="Update" CancelText="Cancel" EditText="Edit"></asp:EditCommandColumn>
<asp:ButtonColumn Text="Delete" CommandName="Delete"></asp:ButtonColumn>
</Columns>
</asp:DataGrid>
Any ideas.. i have tried all sorts!!
cheers
dave
David Jenkins
-------------------------------------------------------------
Do you want to make extra money around your commitments?
Credit cards, bills, loans and a mortgage - all getting you down?
Is your pension going to be enough when you retire?
There is a solution visit
http://www.1stmillion.co.uk
or call 01772 489521