Telerik Forums
UI for ASP.NET AJAX Forum
2 answers
458 views
Hello all,

I have a grid with multiple row edits allowed, and it opens in edit mode by default.  In my case, a checkboxcolumn displays some options that can be selected, or deselected by the user.

I want to show a commanditem button when any checkbox in the checkboxcolumn is changed , so that an update button appears to save changes.

If a row change (in this case, a checkbox being clicked in a CheckBoxColumn), the grid display an "update" button as a commanditem. When the commanditem is selected, it does a batch update on the server (similar to the batch update example in the doc).

I'm considering using a columnclick event on the client side API, or to go with a custom template column and use regular checkboxes, trapping the checked event client side.   Is there a better method?

Thanks,

Etienne
EM
Top achievements
Rank 1
 answered on 03 Nov 2008
1 answer
89 views
Hello,

I would like to know if its possible to change the images location to another sub-domain. For example lets say i have the editor in admin.domain.com and i have the files/images on upload.domain.com or just domain.com/upload/images.

Might it be possible to add a script that renders the folders and files within the target folder?

regards,

Thomas
Rumen
Telerik team
 answered on 03 Nov 2008
1 answer
179 views
I am attempting to use the rad window control to create a wizard to create users for a software system. I looked at the demo, and I am trying to fashion it after that. I will open up a radwindow, and as the user progresses, he will click a button to go forward and backward using the same window, but reloading a new URL and passing arguments along the way. I see you can use either arguments or querystrings. From what I believe, you can only use the window arguments on the client side, and you can only use the querystring on the server. Since some of my code on page load is on the client, and some is on the server, I have to send both args and querystrings back and forth since I want my data to persist from page to page and back again. It appears that my page is loading twice which I don't know why. On my first page, I only have 3 text boxes, and if the user goes to the second page, and then returns the first, even though I am reloading the textboxes from the querystrings or args, the textboxes are empty. That is the first of my problems. I am attaching my code to see if anyone can shed some light for me. If anyone knows the best way to set up a wizard this way with persisting data, please let me know. Thank you,
Laura

Main aspx page to create radwindow and go to first page of wizard:
  function openWin(OrderDetailID) {

                var urlArgs = cbeGetURLArguments();

                var sbOID = parseInt(urlArgs['sbOID']);
                var queryODID = parseInt(urlArgs['sbODID']);
                var sbproductid = parseInt(urlArgs['sbproductid']);
                var SAPID = urlArgs['SAPID'];

                var txtbxODID = document.getElementById('TextBoxOrderDetailID').value;
                var txtbxProduct = document.getElementById('TextBoxProduct').value;
                if (txtbxODID == null)
                    sbODID = queryODID;
                else
                    sbODID = txtbxODID;

                //Create a new Object to be used as an argument to the radWindow
                var arg = new Object();
                //Using an Object as a argument is convenient as it allows setting many properties.
                arg.ODID = txtbxODID;
                arg.OID = sbOID;
                arg.SAPID = SAPID;
                arg.productid=sbproductid;
                arg.product = txtbxProduct;
                arg.temptablename = "";
                arg.package_cd = "NTB";
                arg.licensePrice = 50;
                arg.numUsers = 0;
                arg.email = "";

                var windowURL = "v8Wizard.aspx?sbODID=" + sbODID + "&sbproductid=" + sbproductid + "&SAPID=" + SAPID + "&sbProduct=" + txtbxProduct;
         
                var oWnd = radopen(windowURL, "RadWindow1");
                //  oWnd.setSize(700, 500);
                oWnd.setSize(600, 680);
                oWnd.center();

                //Set the argument object to the radWindow        
                oWnd.Argument = arg;

                //set a function to be called when RadWindow is closed
                oWnd.add_close(OnClientClose);
            }
            function OnClientClose(oWnd) {
                //get the transferred arguments
                // var OrderDetailID = oWnd.argument.OID;
                // var seldate = oWnd.argument.selDate;

                var numUsers = oWnd.argument.numUsers;
                if (numUsers <= 0)
                    numUsers = 0;
                var order = document.getElementById("order");
                order.innerHTML = numUsers + " users created ";
            }

                                            
        </script>
   <telerik:RadFormDecorator ID="formDecorator1" runat="server" DecoratedControls="All" Skin="Office2007" />
    ........
    
 
   <div style="height:40px;width:50px;">
       <button id="WizardButton" style="width:170px;" onclick="openWin('<%# TextBoxOrderDetailID.Text %>'); return false;">Create Users</button>
    </div>
   <telerik:RadWindowManager ID="wizardWindowManager"                             


First page of wizard that opens when button on main default.aspx page is  clicked:

<body onload="getArgs()" >
   <form id="Form2" method="post" runat="server">
   

        <script  type="text/javascript">

            function centerUpdatePanel() {
                centerElementOnScreen(document.getElementById("RadAjaxLoadingPanel1"));
            }

            function centerElementOnScreen(element) {
                var scrollTop = document.body.scrollTop;
                var scrollLeft = document.body.scrollLeft;

                var viewPortHeight = document.body.clientHeight;
                var viewPortWidth = document.body.clientWidth;

                if (document.compatMode == "CSS1Compat") {
                    viewPortHeight = document.documentElement.clientHeight;
                    viewPortWidth = document.documentElement.clientWidth;

                    scrollTop = document.documentElement.scrollTop;
                    scrollLeft = document.documentElement.scrollLeft;
                }

                var topOffset = Math.ceil(viewPortHeight / 2 - element.offsetHeight / 2);
                var leftOffset = Math.ceil(viewPortWidth / 2 - element.offsetWidth / 2);

                var top = scrollTop + topOffset - 40;
                var left = scrollLeft + leftOffset - 70;

                element.style.position = "absolute";
                element.style.top = top + "px";
                element.style.left = left + "px";
            }

            function getArgs() {
                var oWnd = GetRadWindow();
                oArgs = oWnd.Argument;
                
                //use the arguments to set the textboxes
                
               var odid = document.getElementById("odid");
               var productname = document.getElementById("productname");
               var SAPID = document.getElementById("SAPID");
               var oid = document.getElementById("oid");
               var productid = document.getElementById("productid");
               var temptablename = document.getElementById("temptablename");
               var package_cd = document.getElementById("package_cd");
               var licensePrice = document.getElementById("licensePrice");
               var numUsers = document.getElementById("numUsers");
               var email = document.getElementById("email");

               odid.value = oArgs.ODID;
               productname.value = oArgs.product;
               SAPID.value = oArgs.SAPID;
               oid.value = oArgs.OID;
               productid.value = oArgs.productid;
               temptablename.value = oArgs.temptablename;
               package_cd.value = oArgs.package_cd;
               if(oArgs.licensePrice > 0)
                   licensePrice.value = oArgs.licensePrice;
                if(oArgs.numUsers > 0)
                    numUsers.value = oArgs.numUsers;
                if(oArgs.email != "")
                    email.value = oArgs.email;
                                     
            }
        
         function cbeGetURLArguments() {
               var idx = location.href.indexOf('?');
               var params = new Array();
               if (idx != -1) {
                   var pairs = location.href.substring(idx + 1, location.href.length).split('&');
                   for (var i = 0; i < pairs.length; i++) {
                       nameVal = pairs[i].split('=');
                       params[i] = nameVal[1];
                       params[nameVal[0]] = nameVal[1];
                   }
               }
               return params;
           }
        function GetRadWindow()
        {
            var oWindow = null;
            if (window.radWindow) oWindow = window.radWindow;
            else if (window.frameElement.radWindow) oWindow = window.frameElement.radWindow;
            return oWindow;
        }

        function goToNextStep() {
          // validate fields
            var isValid = validate();
            if (!isValid)
                return;
                         
                var oWnd = GetRadWindow();

                var oargs = oWnd.Argument;   // these are the arguments that were sent by the default.aspx
                
                var odid = document.getElementById("odid");
                var productname = document.getElementById("productname");
                var SAPID = document.getElementById("SAPID");
                var oid = document.getElementById("oid");
                var productid = document.getElementById("productid");
                var temptablename = document.getElementById("temptablename");
                var package_cd = document.getElementById("package_cd");
                var licensePrice = document.getElementById("licensePrice");
                var numUsers = document.getElementById("numUsers");
                var email = document.getElementById("email");
                
                oArgs.ODID = odid.value;
                oArgs.product = productname.value;
                oArgs.SAPID = SAPID.value ;
                oArgs.OID = oid.value ;
                oArgs.productid = productid.value;
                oArgs.temptablename = temptablename.value;
                oArgs.package_cd =package_cd.value;
                oArgs.licensePrice = licensePrice.value;
                oArgs.numUsers = numUsers.value;
                oArgs.email = email.value;
                
                // sending orderdetailid, productid and sapid in querystring because that is needed on page load before client page load is called
                // everything else is set up in the args.
                var windowURL = "v8Wizard_Page2.aspx?sbODID=" + odid.value + "&sbproductid=" + productid.value + "&SAPID=" + SAPID.value
                   + "&product=" + productname.value + "&ttt=" + temptablename.value;
              //  var windowURL = "v8Wizard_Page2.aspx?sbODID=" + ODID + "&wnd=" + oWnd + "&sbOID=" + OID + "&SAPID=" + SAPID + "&product=" + PRODUCT +
              //          "&email=" + EMAIL + "&numUsers=" + NUMUSERS + "&licenseprice=" + PRICE ;
                oWnd.setUrl(windowURL);

            }

            function validate() {
                var errorMessage = "The following items must be fixed before going to the next step:\r\n";
                var error = 0;
                var blankEmail = 0;
                if (document.getElementById('licensePrice').value == "") {
                    errorMessage = errorMessage + "\r\n * Price cannont be blank";
                    error = 1;
                 }
                if (document.getElementById('numUsers').value == "") {
                    errorMessage = errorMessage + "\r\n * Number of users can not be blank";
                    error = 1;
                }
                if (document.getElementById('email').value == "") {
                    errorMessage = errorMessage + "\r\n * Email  can not be blank";
                    blankEmail = 1;
                    error = 1;
                }
                if (blankEmail == 0) {
                    var emailPat = /^(\".*\"|[A-Za-z]\w*)@(\[\d{1,3}(\.\d{1,3}){3}]|[A-Za-z]\w*(\.[A-Za-z]\w*)+)$/;
                    var emailid = document.getElementById('email').value;
                    var matchArray = emailid.match(emailPat);
                    if (matchArray == null) {
                        errorMessage = errorMessage + "\r\n * Your email address seems incorrect. Please try again.";
                        error = 1;
                    }
                }
                if (error == 0)
                    return true;
                else {
                    alert(errorMessage);
                    return false;
                }
            }    
        function returnToParent()
        {
             //create the argument that will be returned to the parent page
             var oArg = new Object();

             //get the name
             var numField = document.getElementById("numUsers");
             var numUsers = numField.value;
             oArg.numUsers = numUsers;
        
            //get a reference to the RadWindow
            var oWnd = GetRadWindow();
            
            //set the argument to the RadWindow
            oWnd.argument = oArg;
            //close the RadWindow            
            if(numUsers.Text != "")
            {
                oWnd.close();
            }
            else
            {
                alert("Please enter number");
            }
        }
        
        </script>
  <telerik:RadAjaxPanel ID="RadAjaxPanel1" runat="server" >
   <telerik:RadScriptManager ID="ScriptManager1" runat="server" EnableTheming="True" OutputCompression="AutoDetect">
   </telerik:RadScriptManager>
   <telerik:RadAjaxManager ID="RadAjaxManager1" runat="server" DefaultLoadingPanelID="RadAjaxLoadingPanel1" >
       <ClientEvents OnRequestStart="centerUpdatePanel();"></ClientEvents>
                <AjaxSettings>
                   
                     
                   
                    <telerik:AjaxSetting AjaxControlID="numUsers">
                    </telerik:AjaxSetting>
                    <telerik:AjaxSetting AjaxControlID="licensePrice">
                    </telerik:AjaxSetting>
                    <telerik:AjaxSetting AjaxControlID="email">
                    </telerik:AjaxSetting>
                   
                     
                   
                </AjaxSettings>
    </telerik:RadAjaxManager>
    
    <telerik:RadAjaxLoadingPanel ID="RadAjaxLoadingPanel1" Runat="server"  Transparency="20"  MinDisplayTime="1000" IsSticky="true" height="200" width="400px"  >
         <img alt="Loading..." src='<%= RadAjaxLoadingPanel.GetWebResourceUrl(Page, "Telerik.Web.UI.Skins.Default.Ajax.loading.gif") %>' style="border: 0;"/>
    </telerik:RadAjaxLoadingPanel>
        
        <asp:Label  ID="title" runat="server"  Font-Names="Monotype Corsiva" Font-Size="XX-Large" CssClass="wizardLbl"></asp:Label>
        
        
            
                <br /><br /><br /><br /><br /><br /><br />
        <telerik:RadFormDecorator ID="formDecorator1" runat="server" DecoratedControls="All" Skin="Office2007" />
                          
        <telerik:RadNumericTextBox ID="numUsers" runat="server" Width="300px"   CssClass ="textboxes" Height="10px"  
                       EnabledStyle-Width="200px" Label="Number of users:"  LabelCssClass="labels">
           <NumberFormat DecimalDigits="0"   />
        </telerik:RadNumericTextBox>
        
        <asp:RequiredFieldValidator id="numUserValidator" runat="server" ErrorMessage="* Enter number of users to add"   
               ForeColor="Gold" Display="Static" ControlToValidate= "numUsers" ></asp:RequiredFieldValidator>
       <br />      
        
        <telerik:RadNumericTextBox  ID="licensePrice" runat="server" Culture="English (United States)" Type="Currency"  Height="10px" Width="300px" CssClass="textboxes"
             Label="License price:" LabelCssClass="labels" EnabledStyle-Width="200px">
        </telerik:RadNumericTextBox>
            <asp:RequiredFieldValidator id="priceValidator" runat="server" ErrorMessage="* Enter number of users to add" ForeColor="Gold"  
                    Display="Static" ControlToValidate= "licensePrice" ></asp:RequiredFieldValidator>
       <br />        
         <telerik:RadTextBox ID="email" runat="server" Visible="true"   Width="300px" Height="10px"  EnabledStyle-Width="200px"
              CssClass="textboxes"  Label="Email Address:" LabelCssClass="labels"></telerik:RadTextBox>
          <asp:RequiredFieldValidator id="requiredEmail" runat="server" ErrorMessage="* Email required"  ForeColor="Gold"  
                   Display="Dynamic" ControlToValidate= "email"   ></asp:RequiredFieldValidator>
          <asp:RegularExpressionValidator Runat="server" ErrorMessage="* Invalid E-mail Address" ID="formatEmail" ForeColor="Gold"  
                   Display="Dynamic" ControlToValidate="email" ValidationExpression=".+@.+\.[a-z]+"  ></asp:RegularExpressionValidator>
        <br />                         
        
           
              
         
                <div style="padding-left: 15px;">
                    <br />
        <div class="wizardRight">
      
      <asp:Button  ID="continueButton" runat="server"  style="width:100px;" OnClientClick="goToNextStep();" Text="Next"
             CausesValidation="true"  ></asp:Button>
         
       </div>
    
      
     </div>

    
<div style="position:absolute; left:0px; bottom:0px;" >    
                        
  <asp:TextBox ID="odid" Visible="true" runat="server"  Width="0" Height="0" style="border: 0px solid #778899;"></asp:TextBox>
  <asp:TextBox ID="productname" Visible="true" runat="server"  Width="0" Height="0" style="border: 0px solid #778899;"></asp:TextBox>
  <asp:TextBox ID="SAPID" Visible="true" runat="server"  Width="0" Height="0" style="border: 0px solid #778899;"></asp:TextBox>
  <asp:TextBox ID="oid" Visible="true" runat="server"  Width="0" Height="0" style="border: 0px solid #778899;"></asp:TextBox>
  <asp:TextBox ID="productid" Visible="true" runat="server"  Width="0" Height="0" style="border: 0px solid #778899;"></asp:TextBox>
  <asp:TextBox ID="temptablename" Visible="true" runat="server"  Width="0" Height="0" style="border: 0px solid #778899;"></asp:TextBox>
  <asp:TextBox ID="package_cd" Visible="true" runat="server"  Width="0" Height="0" style="border: 0px solid #778899;"></asp:TextBox>
    <asp:TextBox ID="companyName" Visible="true" runat="server"  Width="0" Height="0" style="border: 0px solid #778899;"></asp:TextBox>
 </div>
  <asp:SqlDataSource ID="LicensePriceDataSource" runat="server"
        ConnectionString="<%$ ConnectionStrings:ContentCentralConnectionString %>"
           SelectCommand="isp_sbGetLicensePrice"
    SelectCommandType="StoredProcedure" >
        <SelectParameters>
            <asp:ControlParameter ControlID="SAPID" Name="SAPID" PropertyName="Text"
                Type="String" />
            <asp:ControlParameter ControlID="odid" Name="sbOrderDetailID"
                PropertyName="Text" Type="Int32" />
            <asp:ControlParameter ControlID="productid" Name="sbProductID"
                PropertyName="Text" Type="Int32" />
        </SelectParameters>
    </asp:SqlDataSource>
    
  </telerik:RadAjaxPanel>
  </form>
  </body>
  </html>

And corresponding C#:

public partial class v8Wizard : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
     // Product.Text = Request.QueryString["sbProduct"];
     // ODID.Text = Request.QueryString["sbODID"];
        if (Page.IsPostBack == false)
        {
            title.Text = Request.QueryString["sbProduct"];
            odid.Text = Request.QueryString["sbODID"];
            productid.Text = Request.QueryString["sbproductid"];
            SAPID.Text = Request.QueryString["SAPID"];

            //call stored procedure to get license price
            double price = getLicensePrice();
            if (licensePrice.Value == null)
                licensePrice.Value = price;
        }
       
    }

And second page of wizard that when this goes back to my first page, the textboxes are always blank:

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
        <link rel="stylesheet" href="v8Wizard.css" type="text/css" />
</head>
<body onload="getArgs()" >
    <form id="form1" runat="server">
    
    <telerik:RadAjaxPanel ID="RadAjaxPanel1" runat="server" >
        <telerik:RadScriptManager ID="ScriptManager1" runat="server" EnableTheming="True" OutputCompression="AutoDetect">
        </telerik:RadScriptManager>

        <script type="text/javascript">

            var oArgs;
            
           function getArgs() {
                var oWnd = GetRadWindow();
                oArgs = oWnd.Argument;
                
                //use the arguments to set the textboxes
                
               var odid = document.getElementById("odid");
               var productname = document.getElementById("productname");
               var SAPID = document.getElementById("SAPID");
               var oid = document.getElementById("oid");
               var productid = document.getElementById("productid");
               var temptablename = document.getElementById("temptablename");
               var package_cd = document.getElementById("package_cd");
               var licensePrice = document.getElementById("licensePrice");
               var numUsers = document.getElementById("numUsers");
               var email = document.getElementById("email");

               odid.value = oArgs.ODID;
               productname.value = oArgs.product;
               SAPID.value = oArgs.SAPID;
               oid.value = oArgs.OID;
               productid.value = oArgs.productid;
               if(temptablename.value == "")
                 temptablename.value = oArgs.temptablename;
               package_cd.value = oArgs.package_cd;
               licensePrice.value = oArgs.licensePrice;
               numUsers.value = oArgs.numUsers;
               email.value = oArgs.email;
               
            }
        
         function cbeGetURLArguments() {
               var idx = location.href.indexOf('?');
               var params = new Array();
               if (idx != -1) {
                   var pairs = location.href.substring(idx + 1, location.href.length).split('&');
                   for (var i = 0; i < pairs.length; i++) {
                       nameVal = pairs[i].split('=');
                       params[i] = nameVal[1];
                       params[nameVal[0]] = nameVal[1];
                   }
               }
               return params;
           }
        function GetRadWindow()
        {
            var oWindow = null;
            if (window.radWindow) oWindow = window.radWindow;
            else if (window.frameElement.radWindow) oWindow = window.frameElement.radWindow;
            return oWindow;
        }

        function goBackOneStep() {

            var oWnd = GetRadWindow();

            var oargs = oWnd.Argument;

            var odid = document.getElementById("odid");
            var productname = document.getElementById("productname");
            var SAPID = document.getElementById("SAPID");
            var oid = document.getElementById("oid");
            var productid = document.getElementById("productid");
            var temptablename = document.getElementById("temptablename");
            var package_cd = document.getElementById("package_cd");
            var licensePrice = document.getElementById("licensePrice");
            var numUsers = document.getElementById("numUsers");
            var email = document.getElementById("email");

            oArgs.ODID = odid.value;
            oArgs.product = productname.value;
            oArgs.SAPID = SAPID.value;
            oArgs.OID = oid.value;
            oArgs.productid = productid.value;
            oArgs.temptablename = temptablename.value;
            oArgs.package_cd = package_cd.value;
            oArgs.licensePrice = licensePrice.value;
            oArgs.numUsers = numUsers.value;
            oArgs.email = email.value;

            // sending orderdetailid, productid and sapid in querystring because that is needed on page load before client page load is called
            // everything else is set up in the args.
            var windowURL = "v8Wizard.aspx?sbODID=" + odid.value + "&sbproductid=" + productid.value + "&SAPID=" + SAPID.value + "&product=" + productname.value;
            oWnd.setUrl(windowURL);
        }
        function goToNextStep() {
            // validate fields
            var isValid = validate();
            if (!isValid)
                return;

            var urlArgs = cbeGetURLArguments();

            var OID = parseInt(urlArgs['sbOID']);
            var ODID = parseInt(urlArgs['sbODID']);
            var PRODUCTID = parseInt(urlArgs['sbproductid']);
            var SAPID = urlArgs['SAPID'];
            var PRODUCT = urlArgs['product'];

            var NUMUSERS = document.getElementById('numUSers').value;

            var EMAIL = document.getElementById('email').value;
            var PRICE = document.getElementById('licensePrice').value;



            var oWnd = GetRadWindow();
            var windowURL = "v8Wizard_Page3.aspx?sbODID=" + ODID + "&sbOID=" + OID + "&SAPID=" + SAPID + "&sbProduct=" + PRODUCT +
                        "&email=" + EMAIL + "&numUsers=" + NUMUSERS + "&licenseprice=" + PRICE;
            oWnd.setUrl(windowURL);

        }

        function validate() {
            if (document.getElementById('licensePrice').value == "") {
                alert("Price can not be blank");
                return false;
            }
            if (document.getElementById('numUsers').value == "") {
                alert("Number of users can not be blank");
                return false;
            }
            if (document.getElementById('email').value == "") {
                alert("Email  can not be blank");
                return false;
            }
            var emailPat = /^(\".*\"|[A-Za-z]\w*)@(\[\d{1,3}(\.\d{1,3}){3}]|[A-Za-z]\w*(\.[A-Za-z]\w*)+)$/;
            var emailid = document.getElementById('email').value;
            var matchArray = emailid.match(emailPat);
            if (matchArray == null) {
                alert("Your email address seems incorrect. Please try again.");
                return false;
            }
            return true;
        }    
        function returnToParent()
        {
             //create the argument that will be returned to the parent page
             var oArg = new Object();

             //get the name
             var numField = document.getElementById("numUsers");
             var numUsers = numField.value;
             oArg.numUsers = numUsers;
        
            //get a reference to the RadWindow
            var oWnd = GetRadWindow();
            
            //set the argument to the RadWindow
            oWnd.argument = oArg;
            //close the RadWindow            
            if(numUsers.Text != "")
            {
                oWnd.close();
            }
            else
            {
                alert("Please enter number");
            }
        }
        
        var priceBox;
        var showPrice;
        var priceFromPackageGrid;
        
        function setnewprice() {
            var oldprice = priceBox.get_value();
            var newprice = priceFromPackageGrid;
            priceBox.set_value(newprice);
            var x = 1;
        }

        function priceLoaded(sender, args) {      /* called when default package grid loads */
            priceFromPackageGrid = sender.get_value();
            if (sender.get_value != "")
                priceBox.set_value(sender.get_value());
            var x = 1;
        }
        function PriceBoxLoad(sender, args) {  /* called when the numeric textbox changes */
            priceBox = sender;
            var y = priceBox.get_value();
            var x = 1;
        }  
        
        </script>
<asp:Label  ID="title" runat="server" Font-Bold="true" Font-Names="Monotype Corsiva" Font-Size="XX-Large"></asp:Label>
   <telerik:RadFormDecorator ID="formDecorator1" runat="server" DecoratedControls="All" Skin="Office2007" />

   <table>
   <tr>
    <td>
          <asp:Label runat="server" Text="Choose a package"></asp:Label>
           <telerik:RadComboBox  
                            ID="package" Width="220px"   runat="server"   OnSelectedIndexChanged="RadComboBoxSelectedIndexChanged"
                            MarkFirstMatch="True"  AllowCustomText="True"   DataSourceID="ContentCentralPackages"   
                            EmptyMessage="Select a package" ExpandAnimation-Type="None"  DataTextField="package_name"
                            CollapseAnimation-Type="None" AutoPostBack="true" AppendDataBoundItems="false"
                            OnClientSelectedIndexChanging="setnewprice"  HighlightTemplatedItems="True"  
                            DataValueField="package_cd"   DropDownWidth="550px"  OnClientKeyPressing="setnewprice"
                            Skin="WebBlue"  EnableVirtualScrolling="True" CausesValidation="false" >
                             <ExpandAnimation Type="InOutElastic" />
                             <CollapseAnimation Duration="200" Type="InOutExpo" />
                          <HeaderTemplate>
                           <table style="width: 520px; text-align: left">
                            <tr>
                                <td style="width: 170px;">
                                    Package Name
                                </td>
                                <td style="width: 350px;" >
                                    Description
                                </td>
                                <td style="width: 0px;" >
                                    
                                </td>
                            </tr>
                          </table>
                        </HeaderTemplate>
                    <ItemTemplate>
                        <table style="width: 320px; text-align: left">
                            <tr>
                                <td style="width: 170px;" valign="top">
                                    <%# DataBinder.Eval(Container.DataItem, "package_name") %>
                                </td>
                                <td style="width: 350px;">
                                    <%# DataBinder.Eval(Container.DataItem, "descriptions") %>
                                </td>
                               
                            </tr>
                        </table>
                    </ItemTemplate>
                 </telerik:RadComboBox>  
                 Package Price:
                <telerik:RadNumericTextBox ID="inFormPkgPrice" runat="server"   
                                    Culture="English (United States)" Type="Currency"   
                                      Width="125px"   OnTextChanged="RadNumericDefaultPackageTextChanged">  
                                      <ClientEvents OnLoad="PriceBoxLoad"  />
                                  </telerik:RadNumericTextBox>
                <br />
             </td>
             
             
      
 
            <td>
         
            
                <div class="wizardcenter">
            
                <telerik:RadGrid ID="PackagePriceGrid" runat="server" AutoGenerateColumns="False" DataSourceID="spAddNewsTradeProduct"  
                                GridLines="None" Skin="Office2007"  
                              ShowStatusBar="True"  >
                  <MasterTableView CommandItemDisplay="None" EditMode="InPlace" DataKeyNames="service_id,Checked" >   
                    <Columns>
                       <telerik:GridBoundColumn  UniqueName="service_id" DataField="service_id" Visible="false" Display="false">
                       </telerik:GridBoundColumn>
                       <telerik:GridBoundColumn DataField="service_name" HeaderText="Default Package"  Display="true" UniqueName="service_name" >
                       </telerik:GridBoundColumn>
                       <telerik:GridTemplateColumn HeaderText="Purchased" UniqueName="CHECKED">
                        <ItemTemplate>
                          <asp:CheckBox ID="Entitled"  Checked='<%# Eval("Checked") %>' runat="server" />
                                 </ItemTemplate>
                          </telerik:GridTemplateColumn>
                        <telerik:GridTemplateColumn  UniqueName="PKGPRICE" HeaderText=""  Display="false" >
                        <ItemTemplate>
                                  <telerik:RadNumericTextBox ID="PKGPRICE" runat="server"  Price='<%# Eval("Price") %>'
                                    Culture="English (United States)" Type="Currency"   DbValue='<%# DataBinder.Eval(Container.DataItem, "Price") %>'  
                                      Width="125px" >  
                                      <ClientEvents    OnLoad="priceLoaded"  OnValueChanged="priceLoaded" />
                                  </telerik:RadNumericTextBox>
                               </ItemTemplate>
                         </telerik:GridTemplateColumn>
                     </Columns>
                    
                  </MasterTableView>
                </telerik:RadGrid>
          </div>
                </td>                   
                </tr>
                </table>
                          
    
     
     <div class="wizardRight">
                
    
      <div style="height:40px;width:50px;">
       <asp:Button  ID="continueButton" runat="server"  style="width:100px;" OnClientClick="goToNextStep();" Text="Continue"
              ></asp:Button></div>
       
     </div>
    
     <div class="wizardLeft">
        <br /><br />
        back
        <br /><br />
    
      <div style="height:40px;width:50px;">
       <asp:Button  ID="backButton" runat="server"  style="width:100px;" OnClientClick="goBackOneStep();" Text="Back"
               ></asp:Button></div>

And it's corresponding C#:

public partial class v8Wizard_Page2 : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {

        if (Page.IsPostBack == false)
        {
            title.Text = Request.QueryString["product"];
            odid.Text = Request.QueryString["sbODID"];
            productname.Text = Request.QueryString["product"];
            SAPID.Text = Request.QueryString["SAPID"];
            temptablename.Text=Request.QueryString["ttt"];

            //if this is the first time here create a temp table and fill it with default package info
            if (temptablename.Text.Length <= 0)
            {
                package_cd.Text = "NTB";

                string strMyGuid = System.Guid.NewGuid().ToString();
                string tempTable = "temp_" + strMyGuid;
                string sTempTable = tempTable.Replace("-", "");
                temptablename.Text = sTempTable;
                Create_Temp_Table(sTempTable);
            }
        }
    }
    protected void Create_Temp_Table(string tableName)
    {

        // Create Instance of Connection and Command Object
        SqlConnection myConnection = new SqlConnection(ConfigurationManager.ConnectionStrings["ContentCentralConnectionString"].ConnectionString);

        SqlCommand myCommand = new SqlCommand("isp_sbAddNewsTradeProduct", myConnection);

        // Mark the Command as a SPROC
        myCommand.CommandType = CommandType.StoredProcedure;

        // Add Parameters to SPROC
        SqlParameter parameterTableName = new SqlParameter("@temptablename", SqlDbType.NVarChar, 200);
        parameterTableName.Value = tableName;
        myCommand.Parameters.Add(parameterTableName);

        try
        {
            myConnection.Open();
            myCommand.ExecuteNonQuery();
            myConnection.Close();
        }
        catch (Exception e)
        {
            int x = 1;
        }
    }
    protected void RadNumericDefaultPackageTextChanged(object sender, EventArgs e)
    {

        //Have to get stored procedure from Tom to save the price to the database
        RadNumericTextBox ntb = (RadNumericTextBox)sender;
        RadNumericTextBoxPrice.Value = ntb.Value;

    }
    protected void RadComboBoxSelectedIndexChanged(object sender, RadComboBoxSelectedIndexChangedEventArgs e)
    {
        string sCurrentPackage = e.Value.ToString();
        package_cd.Text = sCurrentPackage;
        
    }
}

                
               





Svetlina Anati
Telerik team
 answered on 03 Nov 2008
2 answers
82 views
here code:
<div id="P1" border="0" style="background-color:Green;border-width:0px;height:100px;width:500px;direction:rtl;">
RadRotator
</div>


this happening because direction:rtl in tag div  ; why?
yehuda
Top achievements
Rank 1
 answered on 03 Nov 2008
2 answers
272 views
The OnClientTabSelecting and OnClientTabSelected events do not fire for the currently selected tab. How do you force these events to always fire (regardless of whether the tab is selected or not)?

TIA
rams
Ramesh
Top achievements
Rank 1
 answered on 03 Nov 2008
1 answer
110 views
Hi,

I have a grid defined in the middle pane of the splitter. When grid was created I want to set the height of the grid to the height of the middle pane(rad pane). For this i used the Client Event:"OnGridCreated". But i am having a problem while reading the pane height.

    function GridCreated(sender, args)  
    {  
     var pane = document.getElementsByName("TecaGridPane");  
     var x =  pane.get_height();  
    } 

This code throws an script error. Please provide me some pointers to read the rad pane height in the script function.
After getting the height of pane how can i assign it to the grid?
Any inputs on this will be very much beneficial for me.

Thanks in Advance,
Nataraj
Svetlina Anati
Telerik team
 answered on 03 Nov 2008
1 answer
123 views

I've changed the entire css and trying to make a box with white background and no border, but i am not having any luck.

the code below is the css I've modified, all i want is just plain white box without border, I tried to set the property of border = none inside tooltip, but nothing seem to work.  I've set EnableEmbeddedBaseStylesheet off and SkinID to Gen2.  would someone please give me some ideas on how to turn these borders off?  Thanks

/* r.a.d.tooltip Gen2 skin */ 
 
/* r.a.d.tooltip resize element */ 
div.radtooltip_Gen2.ResizeElement  
{  
    border-stylenone !important;  
    background#f8fce0;  
}  
 
div.radtooltip_Gen2  
{  
    border-stylenone !important;  
    positionabsolute;  
    cursordefault;  
    background#fff;  
}  
 
div.radtooltip_Gen2.LoadingSign  
{     
    /*background: url(ToolTip/Loading.gif) no-repeat center !important;*/ 
    width: 100% !important;   
    height: 100% !important;  
    text-align:left !important;  
    border:0;  
}  
 
div.radtooltip_Gen2 div  
{  
}  
 
 
div.radtooltip_Gen2 div.ToolTipCallout  
{  
    display:none;  
}  
 
div.radtooltip_Gen2.visiblecallout  
{  
    /**/      
}  
 
div.radtooltip_Gen2.visiblecallout div.ToolTipCallout  
{  
    displayblock;  
}  
 
 
div.radtooltip_Gen2 table.ToolTipWrapper  
{  
    padding: 0; margin: 0;  
    border-collapsecollapse;  
}  
 
div.radtooltip_Gen2 table.ToolTipWrapper td  
{         
    padding: 0; margin: 0;  
    border-collapsecollapse;  
    background#fff;  
    text-align:left;  
}  
 
/* -------------------------- CORNER SETTINGS BEGIN ---------------------------------- */ 
div.radtooltip_Gen2 table.ToolTipWrapper td.ToolTipTopLeft,  
div.radtooltip_Gen2 table.ToolTipWrapper td.ToolTipTopRight,  
div.radtooltip_Gen2 table.ToolTipWrapper td.ToolTipBottomLeft,  
div.radtooltip_Gen2 table.ToolTipWrapper td.ToolTipBottomRight  
{  
    height15pxwidth4pxline-height15px;  
    padding: 0;  
}  
 
div.radtooltip_Gen2 table.ToolTipWrapper td.ToolTipTopCenter,  
div.radtooltip_Gen2 table.ToolTipWrapper td.ToolTipBottomCenter  
{  
    height15pxline-height15px;  
}  
 
div.radtooltip_Gen2 table.ToolTipWrapper td.ToolTipLeftMiddle  
{  
    width15px;  
}  
 
div.radtooltip_Gen2 table.ToolTipWrapper td.ToolTipRightMiddle  
{  
    width15px;  
}  
 
div.radtooltip_Gen2 table.ToolTipWrapper td.ToolTipTopRight,  
div.radtooltip_Gen2 table.ToolTipWrapper td.ToolTipRightMiddle,  
div.radtooltip_Gen2 table.ToolTipWrapper td.ToolTipBottomRight  
{  
    width5px;  
}  
 
/* -------------------------- CORNER SETTINGS END ---------------------------------- */ 
 
div.radtooltip_Gen2 table.ToolTipWrapper td.ToolTipContent  
{  
    fontnormal 12px/18px ArialVerdanaSans-serif;  
    height: 100%;  
    color:#000;  
}  
 
div.radtooltip_Gen2 div.ToolTipTitlebar  
{     
    colorblack;  
    fontbold 12px/18px VerdanaArialSans-serif;  
    float:left;  
}  
 
div.radtooltip_Gen2 table.ToolTipWrapper td.ToolTipTopCenter div.ToolTipTitlebar div  
{  
    floatleft;  
    margin-right12px;  
    line-height21px;    
}  
 
/* close button */ 
div.radtooltip_Gen2 a.CloseButton,  
div.radtooltip_Gen2 a.CloseButton:hover  
{  
    displayblockfloatrightright;  
    width16pxline-height16pxheight16px;  
    margin-right: -5px;  
    /*background: url(ToolTip/close.gif) no-repeat;*/ 
    text-indent: -9999px;  
    outlinenone;  
}  
 
/* --------------------------------------------- TOOLTIP CALLOUT SETTINGS BEGIN --------------------------------------------- */ 
div.radtooltip_Gen2 div.ToolTipCallout  
{  
    positionabsolutetop: 0; left: 0;  
    line-height11pxheight11pxwidth11px;  
    /*background-image: url(ToolTip/Callouts.gif);*/ 
    background-repeatno-repeat;  
}  
 
/* position="Center" */ 
div.radtooltip_Gen2 .Center  
{  
    backgroundnone !important;  
}  
 
/* position="BottomRight" */ 
.radtooltip_Gen2 .TopLeft  
{  
    margin-top: -11pxmargin-left15px;  
}  
 
/* position="BottomCenter" */ 
.radtooltip_Gen2 .TopCenter  
{  
    left: 50% !important;  
    margin-top: -11pxmargin-left: -5px;  
    background-position: 0 -11px !important;  
}  
 
/* position="BottomLeft" */ 
.radtooltip_Gen2 .TopRight  
{  
    left: 100% !important;  
    margin-top: -11pxmargin-left: -26px;  
    background-position: 0 -22px !important;  
}  
 
/* position="TopCenter" */ 
.radtooltip_Gen2 .BottomCenter  
{  
    top: 100% !important; left: 50% !important;  
    margin-left: -5px !important; margin-top: 0 !important;  
    width: 100% !important;  
    background-position: 0 -55px !important;  
}  
 
/* position="TopLeft" */ 
.radtooltip_Gen2 .BottomRight  
{  
    top: 100% !important; left: 100% !important;  
    margin-left: -25px !important; margin-top0px !important;  
    background-position: 0 -66px !important;  
}  
 
/* position="TopRight" */ 
.radtooltip_Gen2 .BottomLeft  
{  
    top: 100% !important;  
    margin-left26px !important; margin-top0px !important;  
    background-position: 0 -88px !important;  
}  
 
/* position="MiddleRight" */ 
.radtooltip_Gen2 .MiddleLeft  
{  
    top: 50% !important;  
    margin-left: -11pxmargin-top: -5px;  
    background-position: 0 -44px !important;  
}  
 
/* position="MiddleLeft" */ 
.radtooltip_Gen2 .MiddleRight  
{  
    left: 100% !important; top: 50% !important;  
    margin-left0pxmargin-top: -5px;  
    background-position: 0 -33px;  
}  
/* --------------------------------------------- TOOLTIP CALLOUT SETTINGS END --------------------------------------------- */ 
 
div.radtooltip_Gen2 table.ToolTipWrapper td.ToolTipTopLeft,     
div.radtooltip_Gen2 table.ToolTipWrapper td.ToolTipTopCenter,     
div.radtooltip_Gen2 table.ToolTipWrapper td.ToolTipTopRight,     
div.radtooltip_Gen2 table.ToolTipWrapper td.ToolTipLeftMiddle,     
div.radtooltip_Gen2 table.ToolTipWrapper td.ToolTipContent,     
div.radtooltip_Gen2 table.ToolTipWrapper td.ToolTipRightMiddle,     
div.radtooltip_Gen2 table.ToolTipWrapper td.ToolTipBottomLeft,     
div.radtooltip_Gen2 table.ToolTipWrapper td.ToolTipBottomCenter,     
div.radtooltip_Gen2 table.ToolTipWrapper td.ToolTipBottomRight     
{  
    padding: 0;  
    border: 0;  
Svetlina Anati
Telerik team
 answered on 03 Nov 2008
1 answer
161 views
Hello,

We are using the RadRotator and want to interact with it on the page uaing jQuery.

jQuery has a ready function that fires after tthe DOM is loaded.

This is our code :

 <telerik:RadScriptBlock ID="RadScriptBlock1" runat="server">
function ScrollRotator()
{
var rotator1 = $find("<%=RadRotatorLatestRegulatoryUpdates.ClientID%>");
}

window.onload = ScrollRotator;  // works
$(document).ready(ScrollRotator);        // does not work in IE, but does in FF
</telerik:RadScriptBlock>



Apparently the rotator1 variable will not be set to the RadRotator control in IE if we use jQuery.

In firefox ze get the expected behaviour.

Is RadRotator injecting HTML after the DOM is loaded so that jQuery cannot find it?





Georgi Tunev
Telerik team
 answered on 03 Nov 2008
5 answers
647 views
Hi,

I'm using a TreeView with a Context Menu that gets generated dynamically.  All of the proper data seems to be loaded for the menu, but when I click on an item, it seems as though the click event isn't being triggered.  In our program we are only trying to handle the client side event, but I tested to see if the server side event was fired, and it also is not executing.  Is this a bug with the TreeView, or am I doing something wrong?
Yana
Telerik team
 answered on 03 Nov 2008
1 answer
84 views
I've got three RadGrids on a single page. Two of them are simply databound to a DataTable at runtime. The third, however, uses a custom template to add custom controls at runtime. When a postback of the entire page occurs, the first two grids retain their data just fine, but the third (the one with custom cells) does not. All the controls disappear and there is nothing in the cells.

Is there no way to make the grid save the custom controls added at runtime?

Thank you.
Yavor
Telerik team
 answered on 03 Nov 2008
Narrow your results
Selected tags
Tags
+? more
Top users last month
Shiori
Top achievements
Rank 2
Iron
Tien
Top achievements
Rank 1
Iron
Robert
Top achievements
Rank 1
Rob
Top achievements
Rank 4
Bronze
Bronze
Iron
Geoff
Top achievements
Rank 1
Want to show your ninja superpower to fellow developers?
Top users last month
Shiori
Top achievements
Rank 2
Iron
Tien
Top achievements
Rank 1
Iron
Robert
Top achievements
Rank 1
Rob
Top achievements
Rank 4
Bronze
Bronze
Iron
Geoff
Top achievements
Rank 1
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?