Hello everybody,
As title, I have a RadNumericTextBox as a GridTemplateColumn. Here is my code:
----------------------------------------------------------------------------------------------------------------------
code design
----------------------------------------------------------------------------------------------------------------------
<telerik:RadGrid ID="rgProduct" runat="server" GridLines="None" AutoGenerateColumns="false"
AllowSorting="true" PageSize="3" onneeddatasource="rgProduct _NeedDataSource"
ondeletecommand="rgProduct_DeleteCommand" >
<HeaderContextMenu EnableImageSprites="True"></HeaderContextMenu>
<MasterTableView>
<Columns>
<telerik:GridBoundColumn DataField="ProductName" HeaderText="Name" UniqueName="gbcPName"> </telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="Price" HeaderText="Price" UniqueName="gbcPrice"></telerik:GridBoundColumn>
<telerik:GridTemplateColumn HeaderText="Quantity" InitializeTemplatesFirst="false" UniqueName="templatecolumns">
<ItemTemplate>
<div>
<telerik:RadNumericTextBox ID="txtQuantity" ToolTip='<%# Eval("ID") %>' AutoPostBack="true"
DataType="System.int16" value='<%# int.Parse(Eval("Quantity").ToString())%>' runat="server"
OnTextChanged="TextChanged">
</telerik:RadNumericTextBox>
</div>
</ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridButtonColumn Text="Delete" CommandName="Delete" Reorderable="true"></telerik:GridButtonColumn>
</Columns>
</MasterTableView>
</telerik:RadGrid>
----------------------------------------------------------------------------------------------------------------------
code behind
----------------------------------------------------------------------------------------------------------------------
public void TextChanged(object sender, EventArgs e)
{
RadNumericTextBox ntb = (RadNumericTextBox)sender;
List<Product> list = (List<Tra>)Session["List"];
for (int i = 0; i < list.Count; i++)
{
if (list[i].ID == int.Parse(ntb.ToolTip))
list[i].Quantity = (int)ntb.Value;
}
Session["List"] = list;
}
------------------------------------------------------------------------------------------------------------------------
OnTextChanged event doesn't work although I set AutoPostBack="true".
Greetings
Tan.
As title, I have a RadNumericTextBox as a GridTemplateColumn. Here is my code:
----------------------------------------------------------------------------------------------------------------------
code design
----------------------------------------------------------------------------------------------------------------------
<telerik:RadGrid ID="rgProduct" runat="server" GridLines="None" AutoGenerateColumns="false"
AllowSorting="true" PageSize="3" onneeddatasource="rgProduct _NeedDataSource"
ondeletecommand="rgProduct_DeleteCommand" >
<HeaderContextMenu EnableImageSprites="True"></HeaderContextMenu>
<MasterTableView>
<Columns>
<telerik:GridBoundColumn DataField="ProductName" HeaderText="Name" UniqueName="gbcPName"> </telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="Price" HeaderText="Price" UniqueName="gbcPrice"></telerik:GridBoundColumn>
<telerik:GridTemplateColumn HeaderText="Quantity" InitializeTemplatesFirst="false" UniqueName="templatecolumns">
<ItemTemplate>
<div>
<telerik:RadNumericTextBox ID="txtQuantity" ToolTip='<%# Eval("ID") %>' AutoPostBack="true"
DataType="System.int16" value='<%# int.Parse(Eval("Quantity").ToString())%>' runat="server"
OnTextChanged="TextChanged">
</telerik:RadNumericTextBox>
</div>
</ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridButtonColumn Text="Delete" CommandName="Delete" Reorderable="true"></telerik:GridButtonColumn>
</Columns>
</MasterTableView>
</telerik:RadGrid>
----------------------------------------------------------------------------------------------------------------------
code behind
----------------------------------------------------------------------------------------------------------------------
public void TextChanged(object sender, EventArgs e)
{
RadNumericTextBox ntb = (RadNumericTextBox)sender;
List<Product> list = (List<Tra>)Session["List"];
for (int i = 0; i < list.Count; i++)
{
if (list[i].ID == int.Parse(ntb.ToolTip))
list[i].Quantity = (int)ntb.Value;
}
Session["List"] = list;
}
------------------------------------------------------------------------------------------------------------------------
OnTextChanged event doesn't work although I set AutoPostBack="true".
Greetings
Tan.
