i have a problem when i expand the child grid and select the child row for editing and click the edit select products linkbutton from customitemtemplate ....it changes to update products and on clicking the cancel button in child grid....it doesnt change to edit select linkbutton
please check my code
i need it urgently...
thanx in advance
<
radG:RadGrid ID="RadGrid1"
AllowMultiRowSelection="true"
AllowMultiRowEdit="true"
Skin="WebBlue"
runat="server"
AllowAutomaticDeletes="True"
AllowAutomaticInserts="True"
Width="97%"
PageSize="14"
AllowAutomaticUpdates="True"
AllowPaging="True"
AutoGenerateColumns="False"
DataSourceID="SqlDatasource1"
ShowStatusBar="true" EnableAJAX="true"
EnableAJAXLoadingTemplate="false"
LoadingTemplateTransparency="50"
GridLines="None" CssClass="RadGrid"
>
<PagerStyle Mode="Slider" />
<ClientSettings>
<Selecting AllowRowSelect="true" />
</ClientSettings>
<MasterTableView CommandItemDisplay="Top"
DataKeyNames="ProductID,SupplierID"
DataSourceID="SqlDatasource1"
EditMode="EditForms"
AutoGenerateColumns="False"
Width="100%">
<DetailTables>
<radG:GridTableView CommandItemDisplay="Top"
DataKeyNames="SupplierID"
DataSourceID="SqlDatasource4"
Width="100%"
Gridlines= "Horizontal"
style="border-color:#d5b96a"
CssClass="RadGrid2"
AllowMultiRowSelection="true"
AllowMultiRowEdit="true"
Skin="WebBlue"
runat="server"
AllowAutomaticDeletes="True"
AllowAutomaticInserts="True"
PageSize="14"
AllowAutomaticUpdates="True"
AllowPaging="True"
AutoGenerateColumns="False"
ShowStatusBar="true" EnableAJAX="true"
EnableAJAXLoadingTemplate="false"
LoadingTemplateTransparency="50"
>
<ParentTableRelation>
<radG:GridRelationFields DetailKeyField="SupplierID"
MasterKeyField= "SupplierID" />
</ParentTableRelation>
<%
-- <DetailTables>
<radG:GridTableView DataKeyNames="OrderID" DataMember="OrderDetails"
Width= "100%" Gridlines="Horizontal" style="border-color:#d5b96a"
CssClass= "RadGrid3">
<ParentTableRelation>
<radG:GridRelationFields DetailKeyField="OrderID"
MasterKeyField= "OrderID" />
</ParentTableRelation>
<Columns>
<radG:GridBoundColumn SortExpression="UnitPrice" HeaderText="Unit
Price " HeaderButtonType="TextButton" DataField="UnitPrice" />
<radG:GridBoundColumn SortExpression="Quantity"
HeaderText= "Quantity" HeaderButtonType="TextButton"
DataField= "Quantity" />
<radG:GridBoundColumn SortExpression="Discount"
HeaderText= "Discount" HeaderButtonType="TextButton"
DataField= "Discount" />
</Columns>
</radG:GridTableView>
</DetailTables>--
%>
<Columns>
<radG:GridClientSelectColumn UniqueName="Select1">
</radG:GridClientSelectColumn>
<radG:GridBoundColumn SortExpression="SupplierID" HeaderText="SupplierID"
HeaderButtonType= "TextButton" DataField="SupplierID" />
<radG:GridBoundColumn SortExpression="CompanyName" HeaderText="companyName"
HeaderButtonType= "TextButton" DataField="CompanyName" />
<%
--<radG:GridBoundColumn SortExpression="EmployeeID" HeaderText="EmployeeID"
HeaderButtonType= "TextButton" DataField="EmployeeID" />--
%>
</Columns>
</radG:GridTableView>
</DetailTables>
<CommandItemTemplate>
Custom command item template
<asp:LinkButton Style="vertical-align: bottom"
ID="btnEditSelected"
runat="server"
CommandName="EditSelected"
Visible='<%# RadGrid1.EditIndexes.Count == 0 %>'>
<img style="border:0px" alt="" src="../../DataEditing/Img/Edit.gif" /> Edit Selected Products
</asp:LinkButton>
<asp:LinkButton ID="btnUpdateEdited"
runat="server"
CommandName="UpdateEdited"
Visible='<%# RadGrid1.EditIndexes.Count > 0 %>'>
<img style="border:0px" alt="" src="../../DataEditing/Img/Update.gif" /> Update Products
</asp:LinkButton>
<asp:LinkButton ID="btnCancel"
runat="server"
CommandName="CancelAll"
Visible='<%# RadGrid1.EditIndexes.Count > 0 || RadGrid1.MasterTableView.IsItemInserted %>'>
<img style="border:0px" alt="" src="../../DataEditing/Img/Cancel.gif" /> Cancel editing
</asp:LinkButton>
<asp:LinkButton ID="LinkButton2"
runat="server"
CommandName="InitInsert"
Visible='<%# !RadGrid1.MasterTableView.IsItemInserted %>'>
<img style="border:0px" alt="" src="../../DataEditing/Img/AddRecord.gif" /> Add new Product
</asp:LinkButton>
<asp:LinkButton ID="LinkButton3"
runat="server"
CommandName="PerformInsert"
Visible='<%# RadGrid1.MasterTableView.IsItemInserted %>'>
<img style="border:0px" alt="" src="../../DataEditing/Img/Insert.gif" /> Add this Product
</asp:LinkButton>
<asp:LinkButton ID="LinkButton1"
OnClientClick="javascript:return confirm('Delete all selected Products?')"
runat="server"
CommandName="DeleteSelected">
<img style="border:0px" alt="" src="../../DataEditing/Img/Delete.gif" /> Delete Selected Products
</asp:LinkButton>
<asp:LinkButton ID="LinkButton4"
runat="server"
CommandName="RebindGrid">
<img style="border:0px" alt="" src="../../DataEditing/Img/Refresh.gif" /> Refresh Product list
</asp:LinkButton><br />
<asp:LinkButton ID="LinkButton11" Visible=true runat="server" CommandName="Deactivate"><img style="border:0px" alt="" src="../../DataEditing/Img/Delete.gif" />Deactivate Products</asp:LinkButton>
</CommandItemTemplate>
<Columns>
<%
-- <radG:GridEditCommandColumn ButtonType="ImageButton"
UpdateImageUrl="..\..\DataEditing\Img\Update.gif"
EditImageUrl="..\..\DataEditing\Img\Edit.gif"
InsertImageUrl="..\..\DataEditing\Img\Insert.gif"
CancelImageUrl="..\..\DataEditing\Img\Cancel.gif"
UniqueName="EditCommandColumn">
<HeaderStyle Width="20px" />
</radG:GridEditCommandColumn>--
%>
<%
-- <radG:GridClientDeleteColumn ConfirmText="Delete this product?"
ButtonType="ImageButton"
ImageUrl="..\..\DataEditing\Img\Delete.gif"
CommandName="Delete" Text="Delete"
UniqueName="DeleteColumn">
<HeaderStyle Width="20px" />
<ItemStyle HorizontalAlign="Center" />
</radG:GridClientDeleteColumn>--
%>
<radG:GridClientSelectColumn UniqueName="Select">
</radG:GridClientSelectColumn>
<%
-- <radG:GridClientSelectColumn HeaderStyle-Width="40px" />--%>
<radG:GridBoundColumn DataField="ProductID"
HeaderText="ID"
ReadOnly="True"
SortExpression="ProductID"
UniqueName="ProductID"
Visible="true">
<HeaderStyle Width="20px" ForeColor="Silver" />
<ItemStyle ForeColor="Silver" />
</radG:GridBoundColumn>
<radG:GridBoundColumn DataField="ProductName"
HeaderText="ProductName"
SortExpression="ProductName"
UniqueName="ProductName">
</radG:GridBoundColumn>
<radG:GridDropDownColumn DataField="SupplierID"
DataSourceID="SqlDatasource2"
HeaderText="Supplier"
ListTextField="CompanyName"
ListValueField="SupplierID"
UniqueName="SupplierID">
</radG:GridDropDownColumn>
<radG:GridDropDownColumn DataField="CategoryID"
DataSourceID="SqlDatasource3"
HeaderText="Category"
ListTextField="CategoryName"
ListValueField="CategoryID"
UniqueName="CAtegorysID">
</radG:GridDropDownColumn>
<radG:GridBoundColumn DataField="UnitsInStock"
HeaderText="Units In Stock"
SortExpression="UnitsInStock"
UniqueName="UnitsInStock">
<HeaderStyle Width="50px" />
</radG:GridBoundColumn>
<radG:GridBoundColumn DataField="QuantityPerUnit"
HeaderText="Quantity Per Unit"
SortExpression="QuantityPerUnit"
UniqueName="QuantityPerUnit"
Visible="false">
</radG:GridBoundColumn>
<radG:GridCheckBoxColumn DataField="Discontinued"
HeaderText="Discontinued"
SortExpression="Discontinued"
UniqueName="Discontinued"
EditFormColumnIndex="1">
<HeaderStyle Width="50px" />
</radG:GridCheckBoxColumn>
<radG:GridBoundColumn DataField="UnitsOnOrder"
HeaderText="Units On Order"
SortExpression="UnitsOnOrder"
UniqueName="UnitsOnOrder"
Visible="false"
EditFormColumnIndex="1">
</radG:GridBoundColumn>
<radG:GridTemplateColumn HeaderText="UnitPrice"
SortExpression="UnitPrice"
UniqueName="TemplateColumn"
EditFormColumnIndex="1">
<HeaderStyle Width="80px" />
<ItemTemplate>
<asp:Label runat="server" ID="lblUnitPrice"
Text='<%# Eval("UnitPrice", "{0:C}") %>'>
</asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox runat="server" ID="tbUnitPrice"
Text='<%# Bind("UnitPrice") %>'>
</asp:TextBox>
<span style="color: Red">*</span>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1"
ControlToValidate="tbUnitPrice"
ErrorMessage="This field is required"
runat="server">
</asp:RequiredFieldValidator>
</EditItemTemplate>
</radG:GridTemplateColumn>
<radG:GridBoundColumn Visible="false"
UniqueName="UnitPrice1"
ReadOnly="true"
ForceExtractValue="InBrowseMode"
DataField="UnitPrice">
</radG:GridBoundColumn>
<radG:GridBoundColumn DataField="ReorderLevel"
HeaderText="Reorder Level"
SortExpression="ReorderLevel"
UniqueName="ReorderLevel"
Visible="false"
EditFormColumnIndex="1">
</radG:GridBoundColumn>
</Columns>
<EditFormSettings ColumnNumber="2"
CaptionDataField="ProductName"
CaptionFormatString="Edit properties of Product {0}">
<FormTableItemStyle Wrap="False"></FormTableItemStyle>
<FormCaptionStyle CssClass="EditFormHeader"></FormCaptionStyle>
<FormMainTableStyle GridLines="Horizontal"
CellSpacing="0"
CellPadding="3"
BackColor="White" />
<FormTableStyle CellSpacing="0"
CellPadding="2"
CssClass="module"
Height="110px"
BackColor="White" />
<FormTableAlternatingItemStyle Wrap="False"></FormTableAlternatingItemStyle>
<FormStyle Width="1%"></FormStyle>
<EditColumn ButtonType="ImageButton"
UpdateImageUrl="..\..\DataEditing\Img\Update.gif"
EditImageUrl="..\..\DataEditing\Img\Edit.gif"
InsertImageUrl="..\..\DataEditing\Img\Insert.gif"
CancelImageUrl="..\..\DataEditing\Img\Cancel.gif"
InsertText="Insert Order"
UpdateText="Update record"
UniqueName="EditCommandColumn1"
CancelText="Cancel edit">
</EditColumn>
<FormTableButtonRowStyle HorizontalAlign="Right"
CssClass="EditFormButtonRow">
</FormTableButtonRowStyle>
</EditFormSettings>
</MasterTableView>
</radG:RadGrid><br />
<asp:SqlDataSource ID="SqlDatasource1" runat="server"
ConnectionString="Data Source=CONN-SRV2;Initial Catalog=Northwind;Persist Security Info=True;User ID=msol;Password=msol"
ProviderName="System.Data.SqlClient"
SelectCommand="SELECT * FROM [Products]" DeleteCommand="DELETE FROM [Products] WHERE [ProductID] = @original_ProductID AND [ProductName] = @original_ProductName AND [SupplierID] = @original_SupplierID AND [CategoryID] = @original_CategoryID AND [QuantityPerUnit] = @original_QuantityPerUnit AND [UnitPrice] = @original_UnitPrice AND [UnitsInStock] = @original_UnitsInStock AND [UnitsOnOrder] = @original_UnitsOnOrder AND [ReorderLevel] = @original_ReorderLevel AND [Discontinued] = @original_Discontinued"
InsertCommand="INSERT INTO Products(ProductName, SupplierID, CategoryID, QuantityPerUnit, UnitPrice, UnitsInStock, UnitsOnOrder, ReorderLevel, Discontinued) VALUES (@ProductName,@SupplierID, @CategoryID, @QuantityPerUnit, @UnitPrice, @UnitsInStock, @UnitsOnOrder, @ReorderLevel, @Discontinued)"
UpdateCommand="UPDATE [Products] SET [ProductName] = @ProductName, [SupplierID] = @SupplierID, [CategoryID] = @CategoryID, [QuantityPerUnit] = @QuantityPerUnit, [UnitPrice] = @UnitPrice, [UnitsInStock] = @UnitsInStock, [UnitsOnOrder] = @UnitsOnOrder, [ReorderLevel] = @ReorderLevel, [Discontinued] = @Discontinued WHERE [ProductID] = @original_ProductID AND [ProductName] = @original_ProductName AND [SupplierID] = @original_SupplierID AND [CategoryID] = @original_CategoryID AND [QuantityPerUnit] = @original_QuantityPerUnit AND [UnitPrice] = @original_UnitPrice AND [UnitsInStock] = @original_UnitsInStock AND [UnitsOnOrder] = @original_UnitsOnOrder AND [ReorderLevel] = @original_ReorderLevel AND [Discontinued] = @original_Discontinued"
OldValuesParameterFormatString="original_{0}"
ConflictDetection="CompareAllValues">
<DeleteParameters>
<asp:Parameter Name="original_ProductID" Type="Int32" />
<asp:Parameter Name="original_ProductName" Type="String" />
<asp:Parameter Name="original_SupplierID" Type="Int32" />
<asp:Parameter Name="original_CategoryID" Type="Int32" />
<asp:Parameter Name="original_QuantityPerUnit" Type="String" />
<asp:Parameter Name="original_UnitPrice" Type="Decimal" />
<asp:Parameter Name="original_UnitsInStock" Type="Int16" />
<asp:Parameter Name="original_UnitsOnOrder" Type="Int16" />
<asp:Parameter Name="original_ReorderLevel" Type="Int16" />
<asp:Parameter Name="original_Discontinued" Type="Boolean" />
</DeleteParameters>
<UpdateParameters>
<asp:Parameter Name="ProductName" Type="String" />
<asp:Parameter Name="SupplierID" Type="Int32" />
<asp:Parameter Name="CategoryID" Type="Int32" />
<asp:Parameter Name="QuantityPerUnit" Type="String" />
<asp:Parameter Name="UnitPrice" Type="Decimal" />
<asp:Parameter Name="UnitsInStock" Type="Int16" />
<asp:Parameter Name="UnitsOnOrder" Type="Int16" />
<asp:Parameter Name="ReorderLevel" Type="Int16" />
<asp:Parameter Name="Discontinued" Type="Boolean" />
<asp:Parameter Name="original_ProductID" Type="Int32" />
<asp:Parameter Name="original_ProductName" Type="String" />
<asp:Parameter Name="original_SupplierID" Type="Int32" />
<asp:Parameter Name="original_CategoryID" Type="Int32" />
<asp:Parameter Name="original_QuantityPerUnit" Type="String" />
<asp:Parameter Name="original_UnitPrice" Type="Decimal" />
<asp:Parameter Name="original_UnitsInStock" Type="Int16" />
<asp:Parameter Name="original_UnitsOnOrder" Type="Int16" />
<asp:Parameter Name="original_ReorderLevel" Type="Int16" />
<asp:Parameter Name="original_Discontinued" Type="Boolean" />
</UpdateParameters>
<InsertParameters>
<asp:Parameter Name="ProductName" Type="String" />
<asp:Parameter Name="SupplierID" Type="Int32" />
<asp:Parameter Name="CategoryID" Type="Int32" />
<asp:Parameter Name="QuantityPerUnit" Type="String" />
<asp:Parameter Name="UnitPrice" Type="Decimal" />
<asp:Parameter Name="UnitsInStock" Type="Int16" />
<asp:Parameter Name="UnitsOnOrder" Type="Int16" />
<asp:Parameter Name="ReorderLevel" Type="Int16" />
<asp:Parameter Name="Discontinued" Type="Boolean" />
</InsertParameters>
</asp:SqlDataSource>
<br />
<
asp:SqlDataSource ID="Sqldatasource2"
SelectCommand="Select [SupplierID], [CompanyName] FROM [Suppliers]"
ConnectionString="Data Source=CONN-SRV2;Initial Catalog=Northwind;Persist Security Info=True;User ID=msol;Password=msol"
ProviderName="System.Data.SqlClient"
runat="server" >
</
asp:SqlDataSource>
<
asp:SqlDataSource ID="Sqldatasource3"
SelectCommand="SELECT [CategoryID], [CategoryName] FROM [Categories]"
ConnectionString="Data Source=CONN-SRV2;Initial Catalog=Northwind;Persist Security Info=True;User ID=msol;Password=msol"
ProviderName="System.Data.SqlClient"
runat="server" >
</
asp:SqlDataSource>
<
asp:SqlDataSource ID="Sqldatasource4"
SelectCommand="Select [SupplierID], [CompanyName] FROM [Suppliers] where SupplierID=@SupplierID"
UpdateCommand="Update [Suppliers] set companyName=@CompanyName where SupplierID=SupplierID"
ConnectionString="Data Source=CONN-SRV2;Initial Catalog=Northwind;Persist Security Info=True;User ID=msol;Password=msol"
ProviderName="System.Data.SqlClient"
runat="server" OldValuesParameterFormatString="original_{0}"
ConflictDetection="CompareAllValues">
<SelectParameters>
<asp:SessionParameter Name="SupplierID" SessionField="SupplierID" Type="string" />
<%
-- <asp:Parameter Name="original_CustomerID" Type="string" />--%>
</SelectParameters>
<UpdateParameters>
<asp:Parameter Name="original_SupplierID" Type="Int32" />
<asp:Parameter Name="CompanyName" Type="string" />
</UpdateParameters>
</
asp:SqlDataSource>
<!-- content end -->
<telerik:Footer runat="server" ID="Footer1"></telerik:Footer>