or
function ItemSelected(sender, args) { var treelist = $find("<%= radTreeList.ClientID %>"); var selectedIndexes = treelist.get_selectedIndexes(); var row = selectedIndexes[0]; var item = treelist.getItem(row);<telerik:RadPanelItem runat="server" Text="Please choose the respective customer order number for which you want to change the Purchase Order" Visible="False"> <ContentTemplate> <table width="100%"> <tr> <td width = "139px"> <asp:Label ID="Label1" runat="server" ForeColor="White" Text="Customer order number:" style="background-color: #333333"></asp:Label> </td> <td> <telerik:RadComboBox runat="server" ID="RadComboBox1" EnableLoadOnDemand="true" DataTextField ="CST_ORDER_" OnItemsRequested="RadComboBox1_ItemsRequested" Height="190px" Width="420px" HighlightTemplatedItems="true" ShowMoreResultsBox="true" EmptyMessage="Type here or search in list..." Skin="Black" > <HeaderTemplate> <ul> <li class="col1">Factory</li> <li class="col2">Customer Order No.</li> <li class="col3">Customer Req. Date</li> </ul> </HeaderTemplate> <ItemTemplate> <ul> <li class="col1"><telerik:RadCodeBlock ID="RadCodeBlock1" runat="server"><%#Eval("FCT_LINE") %></telerik:RadCodeBlock></li> <li class="col2"> <telerik:RadCodeBlock ID="RadCodeBlock2" runat="server"><%#Eval("CST_ORDER_") %></telerik:RadCodeBlock></li> <li class="col3"><telerik:RadCodeBlock ID="RadCodeBlock3" runat="server"><%#Eval("CRD") %></telerik:RadCodeBlock></li> </ul> </ItemTemplate> </telerik:RadComboBox> </td> </tr> <tr> <td> <telerik:RadButton runat="server" Skin="Black" Text="Submit" ID="Submit_Button1" Width="150px" onclick="Submit_Button1_Click" AutoPostBack="true" ></telerik:RadButton> <telerik:RadButton runat="server" Skin="Black" Text="Cancel" ID="Cancel_Button1" OnClick="CancelClick" Width="150px"></telerik:RadButton></td> </tr> </table> </ContentTemplate> </telerik:RadPanelItem> <telerik:RadPanelItem runat="server" Value="Item1" Text="Please change sizerun for the following Purchase Order" Visible="False" ViewStateMode="Enabled"> <ContentTemplate> <asp:Table runat="server" ID="Table1"></asp:Table> <telerik:RadButton ID="Step2_OK" runat="server" OnClientClicked="OpenWin" AutoPostBack="false" Skin="Black" Text= "Submit changes"> </telerik:RadButton> <telerik:RadButton ID="Step2_Back" runat="server"> </telerik:RadButton> <telerik:RadButton ID="Step2_Cancel" runat="server"> </telerik:RadButton> </ContentTemplate> </telerik:RadPanelItem>protected void CreateTable(object sender, EventArgs e) { var ItemNumberString = RadComboBox1.Text; /// read PO Quantities and PO Size Names. var query = from p in db.View_PO_Value_Range_olds where p.CST_ORDER_.Equals(ItemNumberString) orderby p.SizeOrder select p; /// read Corresponding size unit. var query1 = from p in db.PurchaseOrders where p.CST_ORDER_.Equals(ItemNumberString) select p; var item = query1.First(); var ItemInt = item.SizeUnitID; string ItemString = Convert.ToString(ItemInt); Table tableconf = TableConfirmation; Table table = Table1 ; RadSlider[] slider = new RadSlider[25]; TableCell[] cells = new TableCell[25]; Label[] labels = new Label[25]; TableRow[] rows = new TableRow[25]; RadNumericTextBox[] textbox = new RadNumericTextBox[15]; //Create the SliderTable /// Row: Corresponding size unit. labels[0] = new Label(); labels[0].Text = "Coresponding Size Unit:"; cells[0] = new TableCell(); cells[0].Controls.Add(labels[0]); rows[0] = new TableRow(); rows[0].Cells.Add(cells[0]); labels[1] = new Label(); labels[1].Text = ItemString; cells[1] = new TableCell(); cells[1].Controls.Add(labels[1]); rows[0].Cells.Add(cells[1]); table.Rows.Add(rows[0]); /// Row:Table header. /// labels[2] = new Label(); labels[2].Text = "Size"; cells[2] = new TableCell(); cells[2].Controls.Add(labels[2]); labels[3] = new Label(); labels[3].Text = "original qty"; cells[3] = new TableCell(); cells[3].Controls.Add(labels[3]); labels[4] = new Label(); labels[4].Text = "new qty"; cells[4] = new TableCell(); cells[4].Controls.Add(labels[4]); rows[1] = new TableRow(); rows[1].Cells.Add(cells[2]); rows[1].Cells.Add(cells[3]); rows[1].Cells.Add(cells[4]); table.Rows.Add(rows[1]); //Create ConfirmationTable static content. labels[6] = new Label(); labels[6].Text = "Coresponding Size Unit:"; cells[9] = new TableCell(); cells[9].Controls.Add(labels[6]); rows[3] = new TableRow(); rows[3].Cells.Add(cells[9]); labels[7] = new Label(); labels[7].Text = ItemString; cells[9] = new TableCell(); cells[9].Controls.Add(labels[7]); rows[3].Cells.Add(cells[9]); tableconf.Rows.Add(rows[3]); /// Row:Table header. /// labels[8] = new Label(); labels[8].Text = "Size"; cells[10] = new TableCell(); cells[10].Controls.Add(labels[8]); labels[9] = new Label(); labels[9].Text = "original qty"; cells[11] = new TableCell(); cells[11].Controls.Add(labels[9]); labels[10] = new Label(); labels[10].Text = "new qty"; cells[12] = new TableCell(); cells[12].Controls.Add(labels[10]); rows[4] = new TableRow(); rows[4].Cells.Add(cells[10]); rows[4].Cells.Add(cells[11]); rows[4].Cells.Add(cells[12]); tableconf.Rows.Add(rows[4]); // foreach SizeRun create a Row in table foreach (var size in query) { string szor = size.SizeOrder.ToString(); string POValueString = Convert.ToString(size.POValue); decimal POValueDec = Convert.ToDecimal(size.POValue); double PONewValue = Convert.ToDouble(size.PONewValue); ///create dinamic rows in SliderTable. labels[5] = new Label(); labels[5].Text = size.Size; labels[5].ID = "LabelSizeRuns_" + size.SizeOrder; cells[5] = new TableCell(); cells[5].Controls.Add(labels[5]); rows[2] = new TableRow(); rows[2].Cells.Add(cells[5]); labels[6] = new Label(); labels[6].Text = POValueString; labels[6].ID = "LabelSizeRuns1_" + size.SizeOrder; cells[6] = new TableCell(); cells[6].Controls.Add(labels[6]); rows[2].Cells.Add(cells[6]); RadNumericTextBox text = new RadNumericTextBox(); textbox[0] = new RadNumericTextBox(); textbox[0].Type = NumericType.Number; textbox[0].MaxLength = 30000; textbox[0].MinValue = 0; textbox[0].MaxValue = 1000; textbox[0].Width = 100; textbox[0].Height = 20; textbox[0].Visible = true; textbox[0].Skin = "Black"; textbox[0].ID = "RadTextBox_" + size.SizeOrder; textbox[0].Value = PONewValue; textbox[0].ClientEvents.OnValueChanged = "TextBoxValueChanged"; //textbox[0].TextChanged += new EventHandler(RadNumericBox_Changed); // textbox[0].AutoPostBack = true; slider[0] = new RadSlider(); slider[0].ID = "RadSlider_" + size.SizeOrder; slider[0].Value = int.Parse(POValueString); slider[0].Width = 400; slider[0].ItemType = SliderItemType.Tick; slider[0].TrackPosition = SliderTrackPosition.TopLeft; slider[0].MaximumValue = 10; slider[0].MinimumValue = 0; slider[0].Skin = "Black"; slider[0].SmallChange = 1; slider[0].OnClientValueChanged = "SliderValueChanged"; cells[7] = new TableCell(); cells[7].Controls.Add(textbox[0]); rows[2].Cells.Add(cells[7]); cells[8] = new TableCell(); cells[8].Controls.Add(slider[0]); rows[2].Cells.Add(cells[8]); table.Rows.Add(rows[2]); /// Create Confirmationtable Dinamic content. labels[11] = new Label(); labels[11].Text = size.Size; labels[11].ID = "LabelSizeRuns_" + size.SizeOrder; cells[13] = new TableCell(); cells[13].Controls.Add(labels[11]); rows[5] = new TableRow(); rows[5].Cells.Add(cells[13]); labels[12] = new Label(); labels[12].Text = POValueString; labels[12].ID = "LabelSizeRuns1_" + size.SizeOrder; cells[14] = new TableCell(); cells[14].Controls.Add(labels[12]); rows[5].Cells.Add(cells[14]); labels[13] = new Label(); labels[13].Text = POValueString; labels[13].ID = "LabelNewSizes_" + size.SizeOrder; cells[15] = new TableCell(); cells[15].Controls.Add(labels[13]); rows[5].Cells.Add(cells[15]); tableconf.Rows.Add(rows[5]); } } protected void CreateGeneralPOInformation(object sender, EventArgs e) { // Read PONumber var PONumberString = RadComboBox1.Text; var query = from p in db.View_PO_General_Informations where p.CST_ORDER_.Equals(PONumberString) select p; var order = query.First(); Table table = PODetailsConfirmationTable; TableCell[] cells = new TableCell[26]; Label[] labels = new Label[26]; TableRow[] rows = new TableRow[13]; RadButton[] buttons = new RadButton[3]; labels[0] = new Label(); labels[0].Text = "Purchase Order Number:"; cells[0] = new TableCell(); cells[0].Controls.Add(labels[0]); labels[1] = new Label(); labels[1].Text = order.PO_ORDER_N; cells[1] = new TableCell(); cells[1].Controls.Add(labels[1]); rows[0] = new TableRow(); rows[0].Cells.Add(cells[0]); rows[0].Cells.Add(cells[1]); labels[2] = new Label(); labels[2].Text = "Client Number:"; cells[2] = new TableCell(); cells[2].Controls.Add(labels[2]); labels[3] = new Label(); labels[3].Text = order.CLIENT_NO; cells[3] = new TableCell(); cells[3].Controls.Add(labels[3]); rows[1] = new TableRow(); rows[1].Cells.Add(cells[2]); rows[1].Cells.Add(cells[3]); labels[4] = new Label(); labels[4].Text = "Order quantity:"; cells[4] = new TableCell(); cells[4].Controls.Add(labels[4]); labels[5] = new Label(); labels[5].Text = order.ORDER_QTY.ToString(); cells[5] = new TableCell(); cells[5].Controls.Add(labels[5]); rows[2] = new TableRow(); rows[2].Cells.Add(cells[4]); rows[2].Cells.Add(cells[5]); labels[6] = new Label(); labels[6].Text = "Customer number:"; cells[6] = new TableCell(); cells[6].Controls.Add(labels[6]); labels[7] = new Label(); labels[7].Text = order.CUSTOMER.ToString(); cells[7] = new TableCell(); cells[7].Controls.Add(labels[7]); rows[3] = new TableRow(); rows[3].Cells.Add(cells[6]); rows[3].Cells.Add(cells[7]); labels[8] = new Label(); labels[8].Text = "Order status:"; cells[8] = new TableCell(); cells[8].Controls.Add(labels[8]); labels[9] = new Label(); labels[9].Text = order.STATUS.ToString(); cells[9] = new TableCell(); cells[9].Controls.Add(labels[9]); rows[4] = new TableRow(); rows[4].Cells.Add(cells[8]); rows[4].Cells.Add(cells[9]); labels[10] = new Label(); labels[10].Text = "Article number:"; cells[10] = new TableCell(); cells[10].Controls.Add(labels[10]); labels[11] = new Label(); labels[11].Text = order.ARTICLE_NO.ToString(); cells[11] = new TableCell(); cells[11].Controls.Add(labels[11]); rows[5] = new TableRow(); rows[5].Cells.Add(cells[10]); rows[5].Cells.Add(cells[11]); labels[12] = new Label(); labels[12].Text = "IPMT_Work_No:"; cells[12] = new TableCell(); cells[12].Controls.Add(labels[12]); labels[13] = new Label(); labels[13].Text = order.IPMT_WORK_.ToString(); cells[13] = new TableCell(); cells[13].Controls.Add(labels[13]); rows[6] = new TableRow(); rows[6].Cells.Add(cells[12]); rows[6].Cells.Add(cells[13]); labels[14] = new Label(); labels[14].Text = "Sportscode:"; cells[14] = new TableCell(); cells[14].Controls.Add(labels[14]); labels[15] = new Label(); labels[15].Text = order.SPORTS_COD.ToString(); cells[15] = new TableCell(); cells[15].Controls.Add(labels[15]); rows[7] = new TableRow(); rows[7].Cells.Add(cells[14]); rows[7].Cells.Add(cells[15]); labels[16] = new Label(); labels[16].Text = "Factory:"; cells[16] = new TableCell(); cells[16].Controls.Add(labels[16]); labels[17] = new Label(); labels[17].Text = order.FCT_LINE.ToString(); cells[17] = new TableCell(); cells[17].Controls.Add(labels[17]); rows[8] = new TableRow(); rows[8].Cells.Add(cells[16]); rows[8].Cells.Add(cells[17]); labels[18] = new Label(); labels[18].Text = "Customer request date:"; cells[18] = new TableCell(); cells[18].Controls.Add(labels[18]); labels[19] = new Label(); labels[19].Text = order.CRD.ToString(); cells[19] = new TableCell(); cells[19].Controls.Add(labels[19]); rows[9] = new TableRow(); rows[9].Cells.Add(cells[18]); rows[9].Cells.Add(cells[19]); labels[20] = new Label(); labels[20].Text = "Statistical delivery date:"; cells[20] = new TableCell(); cells[20].Controls.Add(labels[20]); labels[21] = new Label(); labels[21].Text = order.PSDD.ToString(); cells[21] = new TableCell(); cells[21].Controls.Add(labels[21]); rows[10] = new TableRow(); rows[10].Cells.Add(cells[20]); rows[10].Cells.Add(cells[21]); labels[22] = new Label(); labels[22].Text = "Delivery date:"; cells[22] = new TableCell(); cells[22].Controls.Add(labels[22]); labels[23] = new Label(); labels[23].Text = order.PODD.ToString(); cells[23] = new TableCell(); cells[23].Controls.Add(labels[23]); rows[11] = new TableRow(); rows[11].Cells.Add(cells[22]); rows[11].Cells.Add(cells[23]); labels[24] = new Label(); labels[24].Text = "Liaison Officer contact:"; cells[24] = new TableCell(); cells[24].Controls.Add(labels[24]); labels[25] = new Label(); labels[25].Text = order.LO_Contact.ToString(); cells[25] = new TableCell(); cells[25].Controls.Add(labels[25]); rows[12] = new TableRow(); rows[12].Cells.Add(cells[24]); rows[12].Cells.Add(cells[25]); //buttons[0] = new RadButton(); //buttons[0].Text = "Save"; //buttons[0].Skin = "Black"; //buttons[0]. //cells[26] = new TableCell(); //cells[26].Controls.Add(buttons[0]); //buttons[1] = new RadButton(); //buttons[1].Text = "Cancel"; //buttons[1].Skin = "Black"; //cells[27] = new TableCell(); //cells[27].Controls.Add(buttons[1]); //rows[12] = new TableRow(); //rows[12].Cells.Add(cells[24]); //rows[12].Cells.Add(cells[25]); table.Rows.Add(rows[0]); table.Rows.Add(rows[1]); table.Rows.Add(rows[2]); table.Rows.Add(rows[3]); table.Rows.Add(rows[4]); table.Rows.Add(rows[5]); table.Rows.Add(rows[6]); table.Rows.Add(rows[7]); table.Rows.Add(rows[8]); table.Rows.Add(rows[9]); table.Rows.Add(rows[10]); table.Rows.Add(rows[11]); table.Rows.Add(rows[12]); } protected void Submit_Button1_Click(object sender, EventArgs e) { CreateTable(sender, e); CreateGeneralPOInformation(sender, e); PrepareInterface("05"); } protected void PrepareInterface(string status) { //Set all items invisible to save code in future. SCIWorkflowPanel.Items[0].Visible = false; SCIWorkflowPanel.Items[1].Visible = false; SCIWorkflowPanel.Items[2].Visible = false; SCIWorkflowPanel.Items[3].Visible = false; SCIWorkflowPanel.Items[4].Visible = false; SCIWorkflowPanel.Items[5].Visible = false; SCIWorkflowPanel.Items[6].Visible = false; SCIWorkflowPanel.Items[7].Visible = false; SCIWorkflowPanel.Items[8].Visible = false; SCIWorkflowPanel.Items[9].Visible = false; SCIWorkflowPanel.Items[10].Visible = false; SCIWorkflowPanel.Items[11].Visible = false; SCIWorkflowPanel.Items[12].Visible = false; SCIWorkflowPanel.Items[13].Visible = false; SCIWorkflowPanel.Items[14].Visible = false; SCIWorkflowPanel.Items[15].Visible = false; SCIWorkflowPanel.Items[16].Visible = false; //When request comes with status switch cases. switch (status) { case "newRequest": SCIWorkflowPanel.Items[0].Visible = false; SCIWorkflowPanel.Items[1].Visible = true; SCIWorkflowPanel.Items[1].Expanded = true; SCIWorkflowPanel.Items[1].Selected = true; SCIWorkflowPanel.Items[16].Visible = false; SCIWorkflowPanel.Items[15].Visible = false; SCIWorkflowPanel.Items[14].Visible = false; SCIWorkflowPanel.Items[13].Visible = false; SCIWorkflowPanel.Items[12].Visible = false; SCIWorkflowPanel.Items[11].Visible = false; SCIWorkflowPanel.Items[10].Visible = false; SCIWorkflowPanel.Items[9].Visible = false; SCIWorkflowPanel.Items[8].Visible = false; SCIWorkflowPanel.Items[7].Visible = false; SCIWorkflowPanel.Items[6].Visible = false; SCIWorkflowPanel.Items[5].Visible = false; SCIWorkflowPanel.Items[4].Visible = false; SCIWorkflowPanel.Items[3].Visible = false; SCIWorkflowPanel.Items[2].Visible = false; break; // Status: Please enter Factory Details. case "00": SCIWorkflowPanel.Items[3].Visible = true; SCIWorkflowPanel.Items[3].Enabled = true; SCIWorkflowPanel.Items[3].Selected = true; SCIWorkflowPanel.Items[3].Expanded = true; SCIWorkflowPanel.Items[8].Visible = true; SCIWorkflowPanel.Items[8].Enabled = true; SCIWorkflowPanel.Items[8].Expanded = true; //RadTabStrip1.Tabs[1].Enabled = true; break; //Status: Please enter factory response. case "01": SCIWorkflowPanel.Items[4].Visible = true; SCIWorkflowPanel.Items[4].Enabled = true; SCIWorkflowPanel.Items[4].Selected = true; SCIWorkflowPanel.Items[4].Expanded = true; SCIWorkflowPanel.Items[8].Visible = true; SCIWorkflowPanel.Items[8].Enabled = true; SCIWorkflowPanel.Items[8].Expanded = true; //RadTabStrip1.Tabs[1].Enabled = true; break; case "02": SCIWorkflowPanel.Items[5].Visible = true; SCIWorkflowPanel.Items[5].Enabled = true; SCIWorkflowPanel.Items[5].Selected = true; SCIWorkflowPanel.Items[5].Expanded = true; SCIWorkflowPanel.Items[8].Visible = true; SCIWorkflowPanel.Items[8].Enabled = true; SCIWorkflowPanel.Items[8].Expanded = true; //RadTabStrip1.Tabs[2].Enabled = true; //RadTabStrip1.Tabs[1].Enabled = true; break; case "03": SCIWorkflowPanel.Items[6].Visible = true; SCIWorkflowPanel.Items[6].Enabled = true; SCIWorkflowPanel.Items[6].Selected = true; SCIWorkflowPanel.Items[6].Expanded = true; SCIWorkflowPanel.Items[8].Visible = true; SCIWorkflowPanel.Items[8].Enabled = true; SCIWorkflowPanel.Items[8].Expanded = true; //RadTabStrip1.Tabs[2].Enabled = true; //RadTabStrip1.Tabs[3].Enabled = true; //RadTabStrip1.Tabs[1].Enabled = true; break; case "04": SCIWorkflowPanel.Items[7].Visible = true; SCIWorkflowPanel.Items[7].Enabled = true; SCIWorkflowPanel.Items[7].Selected = true; SCIWorkflowPanel.Items[7].Expanded = true; SCIWorkflowPanel.Items[8].Visible = true; SCIWorkflowPanel.Items[8].Enabled = true; SCIWorkflowPanel.Items[8].Expanded = true; //RadTabStrip1.Tabs[1].Enabled = true; //RadTabStrip1.Tabs[2].Enabled = true; //RadTabStrip1.Tabs[3].Enabled = true; break; //Request comes without status default: SCIWorkflowPanel.Items[0].Visible = true; SCIWorkflowPanel.Items[0].Enabled = true; SCIWorkflowPanel.Items[0].Selected = true; SCIWorkflowPanel.Items[0].Expanded = true; SCIWorkflowPanel.Items[1].Visible = false; SCIWorkflowPanel.Items[2].Visible = false; SCIWorkflowPanel.Items[3].Visible = false; SCIWorkflowPanel.Items[4].Visible = false; SCIWorkflowPanel.Items[5].Visible = false; SCIWorkflowPanel.Items[6].Visible = false; SCIWorkflowPanel.Items[7].Visible = false; SCIWorkflowPanel.Items[8].Visible = false; SCIWorkflowPanel.Items[9].Visible = true; SCIWorkflowPanel.Items[10].Visible = true; SCIWorkflowPanel.Items[11].Visible = true; SCIWorkflowPanel.Items[12].Visible = true; SCIWorkflowPanel.Items[13].Visible = true; SCIWorkflowPanel.Items[14].Visible = true; SCIWorkflowPanel.Items[15].Visible = true; SCIWorkflowPanel.Items[16].Visible = true; break; case "05": SCIWorkflowPanel.Items[2].Visible = true; SCIWorkflowPanel.Items[2].Enabled = true; SCIWorkflowPanel.Items[2].Selected = true; SCIWorkflowPanel.Items[2].Expanded = true; SCIWorkflowPanel.Items[8].Visible = true; SCIWorkflowPanel.Items[8].Enabled = true; SCIWorkflowPanel.Items[8].Expanded = true; //RadTabStrip1.Tabs[1].Enabled = true; break; case "06": SCIWorkflowPanel.Items[0].Visible = true; SCIWorkflowPanel.Items[1].Visible = true; SCIWorkflowPanel.Items[2].Visible = true; SCIWorkflowPanel.Items[3].Visible = true; SCIWorkflowPanel.Items[4].Visible = true; SCIWorkflowPanel.Items[5].Visible = true; SCIWorkflowPanel.Items[6].Visible = true; SCIWorkflowPanel.Items[7].Visible = true; SCIWorkflowPanel.Items[8].Visible = true; SCIWorkflowPanel.Items[9].Visible = true; SCIWorkflowPanel.Items[10].Visible = true; SCIWorkflowPanel.Items[11].Visible = true; SCIWorkflowPanel.Items[12].Visible = true; SCIWorkflowPanel.Items[13].Visible = true; SCIWorkflowPanel.Items[14].Visible = true; SCIWorkflowPanel.Items[15].Visible = true; SCIWorkflowPanel.Items[16].Visible = true; break; } }<%@ Page Language="vb" AutoEventWireup="false" CodeBehind="WebForm4.aspx.vb" Inherits="BNBERP.WebForm4" %><%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head runat="server"> <title></title></head><body><telerik:RadCodeBlock ID="RadCodeBlock1" runat="server"><script type="text/javascript"> function RowContextMenu(sender, eventArgs) { var menu = $find("<%=RadMenu1.ClientID %>"); var evt = eventArgs.get_domEvent(); if (evt.target.tagName == "INPUT" || evt.target.tagName == "A") { return; } var index = eventArgs.get_itemIndexHierarchical(); document.getElementById("radGridClickedRowIndex").value = index; sender.get_masterTableView().selectItem(sender.get_masterTableView().get_dataItems()[index].get_element(), true); menu.show(evt); evt.cancelBubble = true; evt.returnValue = false; if (evt.stopPropagation) { evt.stopPropagation(); evt.preventDefault(); } } </script></telerik:RadCodeBlock> <form id="form1" runat="server"><div> <telerik:RadScriptManager ID="RadScriptManager1" runat="server"> </telerik:RadScriptManager> <telerik:RadButton ID="RadButton1" runat="server" Text="Get Data"> </telerik:RadButton> <telerik:RadGrid ID="RadGrid1" runat="server" AutoGenerateColumns="False" Skin="Forest" EnableHeaderContextMenu="True"> <MasterTableView ><CommandItemSettings ExportToPdfText="Export to Pdf"></CommandItemSettings> <Columns> <telerik:GridTemplateColumn HeaderText="Item No"> <ItemTemplate> <telerik:RadComboBox ID="RadComboBox1" runat="server" DataSourceID="SqlDataSource1" DataTextField="ItemCode" DataValueField="ItemCode"> </telerik:RadComboBox> <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:SBODemoINConnectionString %>" SelectCommand="SELECT [ItemCode], [ItemName] FROM [OITM]"> </asp:SqlDataSource> </ItemTemplate> </telerik:GridTemplateColumn> <telerik:GridTemplateColumn HeaderText="Item Description"> <ItemTemplate> <telerik:RadComboBox ID="RadComboBox2" runat="server" DataSourceID="SqlDataSource2" DataTextField="ItemName" DataValueField="ItemCode"> </telerik:RadComboBox> <asp:SqlDataSource ID="SqlDataSource2" runat="server" ConnectionString="<%$ ConnectionStrings:SBODemoINConnectionString %>" SelectCommand="SELECT [ItemCode], [ItemName] FROM [OITM]"> </asp:SqlDataSource> </ItemTemplate> </telerik:GridTemplateColumn> <telerik:GridTemplateColumn HeaderText="On Hand"> <ItemTemplate> <telerik:RadTextBox ID="RadTextBox3" Runat="server"> </telerik:RadTextBox> </ItemTemplate> </telerik:GridTemplateColumn> <telerik:GridTemplateColumn HeaderText="Prefered Vendor"> <ItemTemplate> <telerik:RadTextBox ID="RadTextBox4" Runat="server"> </telerik:RadTextBox> </ItemTemplate> </telerik:GridTemplateColumn> </Columns> </MasterTableView> <ClientSettings> <ClientEvents OnRowContextMenu="RowContextMenu" /> </ClientSettings><HeaderContextMenu EnableImageSprites="True" CssClass="GridContextMenu GridContextMenu_Default"></HeaderContextMenu> </telerik:RadGrid> <input type="hidden" id="radGridClickedRowIndex" name="radGridClickedRowIndex" /> <telerik:RadContextMenu ID="RadMenu1" runat="server" EnableRoundedCorners="true" EnableShadows="true"> <Items> <telerik:RadMenuItem Text="Add Row" /> <telerik:RadMenuItem Text="Delete Row" /> <telerik:RadMenuItem Text="Duplicate Row"/> </Items> </telerik:RadContextMenu> <telerik:RadAjaxPanel ID="RadAjaxPanel1" runat="server" Height="200px" Width="300px"> </telerik:RadAjaxPanel> </div> </form></body></html>Imports Telerik.Web.UIImports SystemImports System.DataImports System.Data.SqlClientPublic Class WebForm4 Inherits System.Web.UI.Page Dim sqlCon As SqlConnection Dim sqlDa As SqlDataAdapter Dim sqlDs As DataSet Dim sqlDt, sqlDt1 As DataTable Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load Try If Not Page.IsPostBack Then 'Dim box1 As RadComboBox = DirectCast(RadGrid1.Items(0).FindControl("RadComboBox1"), RadComboBox) 'Dim col As GridTemplateColumn 'col = RadGrid1.Columns(0) sqlCon = New SqlConnection("Data Source=BNBSOFT-EF98F06\SQLEXPRESS;Initial Catalog=SBODemoIN;Integrated Security=True") sqlDa = New SqlDataAdapter("SELECT [ItemCode],[ItemName],[OnHand],[CardCode] FROM [SBODemoIN].[dbo].[OITM]", sqlCon) sqlDs = New DataSet() sqlDt = New DataTable() sqlDa.FillSchema(sqlDt, SchemaType.Source) For Each column As DataColumn In sqlDt.Columns() column.AllowDBNull = "True" Next SetInitialRow(sqlDt) End If Catch ex As Exception End Try End Sub Private Sub FillItemsCombo() sqlCon = New SqlConnection("Data Source=BNBSOFT-EF98F06\SQLEXPRESS;Initial Catalog=SBODemoIN;Integrated Security=True") sqlDa = New SqlDataAdapter("SELECT [ItemCode],[ItemName],[OnHand],[CardCode] FROM [SBODemoIN].[dbo].[OITM]", sqlCon) End Sub Private Sub SetInitialRow(ByRef dt1 As DataTable) Dim dt As New DataTable() dt = dt1 Dim dr As DataRow = Nothing dr = dt.NewRow() dr.Item(2) = "4.0" dt.Rows.Add(dr) 'Store the DataTable in ViewState ViewState("CurrentTable") = dt RadGrid1.DataSource = dt RadGrid1.DataBind() SetPreviousData() 'DirectCast(item("YourColumnUniqueName").FindControl("IDofYourRadTextBox"), RadTextBox).Text() End Sub Private Sub SetPreviousData() Dim rowIndex As Integer = 0 If ViewState("CurrentTable") IsNot Nothing Then Dim dt As DataTable = DirectCast(ViewState("CurrentTable"), DataTable) If dt.Rows.Count > 0 Then For i As Integer = 0 To dt.Rows.Count - 1 Dim box1 As RadComboBox = DirectCast(RadGrid1.Items(rowIndex).Cells(0).FindControl("RadComboBox1"), RadComboBox) Dim box2 As RadComboBox = DirectCast(RadGrid1.Items(rowIndex).Cells(1).FindControl("RadComboBox2"), RadComboBox) Dim box3 As RadTextBox = DirectCast(RadGrid1.Items(rowIndex).Cells(2).FindControl("RadTextBox3"), RadTextBox) Dim box4 As RadTextBox = DirectCast(RadGrid1.Items(rowIndex).Cells(3).FindControl("RadTextBox4"), RadTextBox) 'If box1.Items.Count <= 0 Then ' sqlCon = New SqlConnection("Data Source=BNBSOFT-EF98F06\SQLEXPRESS;Initial Catalog=SBODemoIN;Integrated Security=True") ' sqlDa = New SqlDataAdapter("SELECT [ItemCode],[ItemName],[OnHand],[CardCode] FROM [SBODemoIN].[dbo].[OITM]", sqlCon) ' sqlDs = New DataSet ' sqlDa.Fill(sqlDs) ' Dim rs, rs1 As RadComboBoxItem ' For j As Integer = 0 To sqlDs.Tables(0).Rows.Count ' rs = New RadComboBoxItem(sqlDs.Tables(0).Rows(j)(0).ToString(), sqlDs.Tables(0).Rows(j)(0).ToString()) ' rs1 = New RadComboBoxItem(sqlDs.Tables(0).Rows(j)(0).ToString(), sqlDs.Tables(0).Rows(j)(0).ToString()) ' box1.Items.Add(rs) ' box2.Items.Add(rs1) ' Next 'End If 'box1.SelectedValue = dt.Rows(i)("ItemCode").ToString() box1.SelectedIndex = 0 box2.SelectedIndex = 0 ' box2.Text = dt.Rows(i)("ItemName").ToString() box3.Text = dt.Rows(i)("OnHand").ToString() box4.Text = dt.Rows(i)("CardCode").ToString() rowIndex += 1 Next End If End If End Sub Private Sub AddNewRowToGrid() Dim rowIndex As Integer = 0 If ViewState("CurrentTable") IsNot Nothing Then Dim dtCurrentTable As DataTable = DirectCast(ViewState("CurrentTable"), DataTable) Dim drCurrentRow As DataRow = Nothing If dtCurrentTable.Rows.Count > 0 Then For i As Integer = 1 To dtCurrentTable.Rows.Count 'extract the TextBox values Dim box1 As RadComboBox = DirectCast(RadGrid1.Items(rowIndex).Cells(0).FindControl("RadComboBox1"), RadComboBox) Dim box2 As RadComboBox = DirectCast(RadGrid1.Items(rowIndex).Cells(1).FindControl("RadComboBox2"), RadComboBox) Dim box3 As RadTextBox = DirectCast(RadGrid1.Items(rowIndex).Cells(2).FindControl("RadTextBox3"), RadTextBox) Dim box4 As RadTextBox = DirectCast(RadGrid1.Items(rowIndex).Cells(3).FindControl("RadTextBox4"), RadTextBox) drCurrentRow = dtCurrentTable.NewRow() dtCurrentTable.Rows(i - 1)("ItemCode") = box1.SelectedItem dtCurrentTable.Rows(i - 1)("ItemName") = box2.SelectedItem dtCurrentTable.Rows(i - 1)("OnHand") = box3.Text dtCurrentTable.Rows(i - 1)("CardCode") = box4.Text rowIndex += 1 Next dtCurrentTable.Rows.Add(drCurrentRow) ViewState("CurrentTable") = dtCurrentTable RadGrid1.DataSource = dtCurrentTable RadGrid1.DataBind() End If Else Response.Write("ViewState is null") End If 'Set Previous Data on Postbacks SetPreviousData() End Sub Private Sub RadMenu1_ItemClick(ByVal sender As Object, ByVal e As Telerik.Web.UI.RadMenuEventArgs) Handles RadMenu1.ItemClick Dim radGridClickedRowIndex As Integer Try radGridClickedRowIndex = Convert.ToInt32(Request.Form("radGridClickedRowIndex")) Select Case e.Item.Text Case "Duplicate Row" 'AddDuplicateRowToGrid(radGridClickedRowIndex) Exit Select Case "Add Row" AddNewRowToGrid() Exit Select Case "Delete Row" 'DeleteRowFromGrid(radGridClickedRowIndex) 'RadGrid1.Items(radGridClickedRowIndex). 'RadGrid1.MasterTableView.PerformDelete(RadGrid1.Items(radGridClickedRowIndex)) Exit Select End Select Catch ex As Exception End Try End Sub Protected Sub RadButton1_Click(ByVal sender As Object, ByVal e As EventArgs) Handles RadButton1.Click Try AddNewRowToGrid() Catch ex As Exception End Try End Sub End Class<telerik:RadGrid ID="timesheetGrid" runat="server" GridLines="None" Skin="Windows7"AllowSorting="True" ShowGroupPanel="True" AutoGenerateColumns="False" AllowPaging="True" PageSize="15" ShowStatusBar="True" AllowFilteringByColumn="True" AllowMultiRowSelection="True" OnNeedDataSource="timesheetGrid_NeedDataSource" OnPreRender="timesheetGrid_PreRender" ViewStateMode="Enabled" onitemdatabound="timesheetGrid_ItemDataBound" Width="970px"> <ClientSettings EnableRowHoverStyle="true" AllowColumnsReorder="True" ReorderColumnsOnClient="True" AllowDragToGroup="True"> <Selecting AllowRowSelect="True" /> <ClientEvents OnRowDblClick="RowDblClick" /> </ClientSettings> <MasterTableView DataKeyNames="ID" EditMode="EditForms"> <RowIndicatorColumn> <HeaderStyle Width="20px"></HeaderStyle> </RowIndicatorColumn> <ExpandCollapseColumn> <HeaderStyle Width="20px"></HeaderStyle> </ExpandCollapseColumn> <CommandItemSettings ExportToPdfText="Export to Pdf"></CommandItemSettings> <Columns> <telerik:GridClientSelectColumn UniqueName="ClientSelectColumn" /> <telerik:GridBoundColumn DataField="ID" HeaderText="ID" UniqueName="ID" Visible="False" ReadOnly="true"> </telerik:GridBoundColumn> <telerik:GridDateTimeColumn DataField="From" DataType="System.DateTime" HeaderText="Date" UniqueName="DateFrom" ReadOnly="true" DataFormatString="{0:dd/MM/yyyy}" FilterControlWidth="100px" HeaderStyle-Width="100px"> </telerik:GridDateTimeColumn> <telerik:GridBoundColumn DataField="User.UserName" HeaderText="User" UniqueName="User" ReadOnly="true"> </telerik:GridBoundColumn> <telerik:GridNumericColumn UniqueName="Duration" HeaderText="Duration" DataType="System.Double" HeaderStyle-Width="30px" FilterControlWidth="30px"> <ItemStyle HorizontalAlign="Right"/> </telerik:GridNumericColumn> <telerik:GridBoundColumn DataField="Description" HeaderText="Description" UniqueName="Description"> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="DocketNo" HeaderText="Docket No" UniqueName="DocketNo" ReadOnly="true"> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="FileCode" HeaderText="File Code" UniqueName="FileCode" HeaderStyle-Width="50px" FilterControlWidth="50px"> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="FileCodeID" HeaderText="File Code ID" UniqueName="FileCodeID" Visible="false"> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="CostCenter" HeaderText="Cost Center" UniqueName="CostCenter" HeaderStyle-Width="50px" FilterControlWidth="50px"> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="CostCenterID" HeaderText="Cost Center ID" UniqueName="CostCenterID" Visible="false"> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="CompanyID" HeaderText="Company ID" UniqueName="CompanyID" Visible="false"> </telerik:GridBoundColumn> <telerik:GridCheckBoxColumn DataField="IsNegativeTimesheet" DataType="System.Boolean" HeaderText="Negative Timesheet" UniqueName="NegativeTimesheet" ReadOnly="true"> </telerik:GridCheckBoxColumn> <telerik:GridCheckBoxColumn DataField="IsOvertime" DataType="System.Boolean" HeaderText="Overtime" UniqueName="Overtime" ReadOnly="true"> </telerik:GridCheckBoxColumn> </Columns> <EditFormSettings UserControlName="UserControls/TimesheetEdit.ascx" EditFormType="WebUserControl"> <EditColumn FilterControlAltText="Filter EditCommandColumn column"> </EditColumn> </EditFormSettings> </MasterTableView> <PagerStyle Mode="NumericPages" VerticalAlign="Bottom" /> <FilterMenu EnableImageSprites="False"> </FilterMenu> <HeaderContextMenu CssClass="GridContextMenu GridContextMenu_Windows7"> </HeaderContextMenu></telerik:RadGrid>protected void timesheetGrid_ItemDataBound(object sender, GridItemEventArgs e){ if (e.Item is GridDataItem) { GridDataItem row = e.Item as GridDataItem; TimeSheet item = e.Item.DataItem as TimeSheet; if (item != null) { double duration = item.To.TimeOfDay.TotalHours - item.From.TimeOfDay.TotalHours; row["Duration"].Text = duration.ToString(); } else { row["Duration"].Text = "0"; } }}