I know I can do this with code, but is there no way to populate a Datasource InsertParameter from a control? In this case I want to update the datasource of a second grid with a value in the selected row of the first grid.
<asp:SqlDataSource ID="dsCommodities" runat="server" ConnectionString="<%$ ConnectionStrings:Market_Directory.My.MySettings.dbConnStr %>" DeleteCommand="DELETE FROM [Commodity] WHERE [CommodityID] = @CommodityID" InsertCommand="INSERT INTO [Commodity] ([CommodityName], [SortOrder], [Published], [MaterialID]) VALUES (@CommodityName, @SortOrder, @Published, @MaterialID)" SelectCommand="SELECT [CommodityID], [CommodityName], [SortOrder], [Published], [MaterialID] FROM [Commodity] WHERE ([MaterialID] = @MaterialID) ORDER BY [SortOrder]" UpdateCommand="UPDATE [Commodity] SET [CommodityName] = @CommodityName, [SortOrder] = @SortOrder, [Published] = @Published, [MaterialID] = @MaterialID WHERE [CommodityID] = @CommodityID"> <DeleteParameters> <asp:Parameter Name="CommodityID" Type="Int32" /> </DeleteParameters> <InsertParameters> <asp:Parameter Name="CommodityName" Type="String" /> <asp:Parameter Name="SortOrder" Type="Int32" /> <asp:Parameter Name="Published" Type="Boolean" /> <asp:ControlParameter ControlID="grdMaterials" DefaultValue="-1" Name="MaterialID" PropertyName="SelectedValue" Type="Int32" /> </InsertParameters> <SelectParameters> <asp:ControlParameter ControlID="grdMaterials" DefaultValue="-1" Name="MaterialID" PropertyName="SelectedValue" Type="Int32" /> </SelectParameters> <UpdateParameters> <asp:Parameter Name="CommodityName" Type="String" /> <asp:Parameter Name="SortOrder" Type="Int32" /> <asp:Parameter Name="Published" Type="Boolean" /> <asp:Parameter Name="MaterialID" Type="Int32" /> <asp:Parameter Name="CommodityID" Type="Int32" /> </UpdateParameters></asp:SqlDataSource>
