or
<%@ Control Language="VB" AutoEventWireup="false" CodeFile="shoppingcart.ascx.vb" Inherits="ctl_shoppingcart" %><%@ Register Assembly="DevExpress.Web.ASPxEditors.v9.2, Version=9.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web.ASPxEditors" TagPrefix="dxe" %><%@ Register assembly="DevExpress.Web.ASPxGridView.v9.2, Version=9.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" namespace="DevExpress.Web.ASPxGridView" tagprefix="dxwgv" %><%@ Register TagPrefix="telerik" Namespace="Telerik.Web.UI" Assembly="Telerik.Web.UI" %><script type="text/javascript"> function showSubDetail(URL) { var oWnd = radopen(URL, "windowItemDetail"); }</script><div class="shoppingcart"> <div class="heading"> Current Items in Your Cart </div> <telerik:RadGrid ID="RadGrid1" runat="server" AllowSorting="true" EnableAJAX="true" DataSourceID="SqlDataSource1" AllowAutomaticDeletes="true" AllowAutomaticInserts="true" AllowAutomaticUpdates="true"> <MasterTableView AutoGenerateColumns="False" DataKeyNames="lineID" DataSourceID="SqlDataSource1" EditMode="InPlace"> <Columns> <telerik:GridEditCommandColumn ButtonType="LinkButton" UniqueName="editcolumn"></telerik:GridEditCommandColumn> <telerik:GridBoundColumn DataField="quoteID" DataType="System.Int32" HeaderText="quoteID" UniqueName="quoteID"></telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="lineID" HeaderText="lineID" UniqueName="lineID"></telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="enteredByContactID" HeaderText="enteredByContactID" UniqueName="enteredByContactID"></telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="containersOrdered" HeaderText="containersOrdered" UniqueName="containersOrdered"></telerik:GridBoundColumn> </Columns> </MasterTableView> </telerik:RadGrid> <br /><br /> <telerik:RadButton ID="btnCheckout" Text="Checkout" runat="server"> </telerik:RadButton> <telerik:RadWindowManager ID="RadWindowManager1" runat="server"> <Windows> <telerik:RadWindow ID="windowItemDetail" CssClass="itemDetailWindow" runat="server" Modal="true" Behaviors="Close" Animation="Fade" AnimationDuration="500" width="500" Overlay="true" Title="Assorted Species Tray Detail" VisibleTitlebar="true" VisibleStatusbar="false"> </telerik:RadWindow> </Windows> </telerik:RadWindowManager> <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConflictDetection="CompareAllValues" ConnectionString="<%$ ConnectionStrings:RakerDBConnectionString %>" SelectCommand="spSelectQuoteDetailInfoByQuoteID" SelectCommandType="StoredProcedure" UpdateCommand="spUpdateQuoteDetailLineByCriteria" UpdateCommandType="StoredProcedure"> <SelectParameters> <asp:Parameter Name="quoteID" Type="Int32" DefaultValue="1229" /> </SelectParameters> <UpdateParameters> <asp:Parameter Name="quoteID" Type="Int32" /> <asp:Parameter Name="lineID" Type="Int32" /> <asp:Parameter Name="containersOrdered" Type="Int32" /> <asp:Parameter Name="enteredByContactID" Type="Int32" /> </UpdateParameters> </asp:SqlDataSource></div>Imports System.DataImports Telerik.Web.UIPartial Class ctl_shoppingcart Inherits System.Web.UI.UserControlEnd Class
<telerik:RadMenuItem runat="server" Text="Admin" Visible='<%# iif(session("UserID") = "1", "True", "False") %>'>DataTable datTabDatosDetalle = new DataTable(); if (ViewState["OrdCompraProdDetallesSub" + IdOrdenCompra + Skucode] == null) { datTabDatosDetalle = CCSMovimientoProductos.BuscarProdDetOrdenCompra_CEDIS(IdOrdenCompra, Skucode).Tables[0]; ViewState.Add("OrdCompraProdDetallesSub" + IdOrdenCompra + Skucode, datTabDatosDetalle); } else datTabDatosDetalle = (DataTable)ViewState["OrdCompraProdDetallesSub" + IdOrdenCompra + Skucode]; Telerik.Web.UI.GridTableView detailTable = new Telerik.Web.UI.GridTableView(radGriOrdComDetalles); Telerik.Web.UI.GridRelationFields relationFields_Id = new Telerik.Web.UI.GridRelationFields(); relationFields_Id.MasterKeyField = "Id"; relationFields_Id.DetailKeyField = "Id"; detailTable.ParentTableRelation.Add(relationFields_Id); Telerik.Web.UI.GridRelationFields relationFields_Skucode = new Telerik.Web.UI.GridRelationFields(); detailTable.ParentTableRelation.Add(relationFields_Skucode); relationFields_Skucode.MasterKeyField = "prodSkucode"; relationFields_Skucode.DetailKeyField = "prodSkucode"; radGriOrdComDetalles.MasterTableView.DetailTables.Add(detailTable); detailTable.Name = "tabDetail" + IdOrdenCompra + Skucode; detailTable.DataKeyNames = new string[] {"prodSkucode" }; detailTable.EnableViewState = true; detailTable.NoDetailRecordsText = ""; detailTable.Caption = "Detalle del producto Sku " + Skucode; detailTable.EditMode = Telerik.Web.UI.GridEditMode.InPlace; foreach (DataColumn dc in datTabDatosDetalle.Columns) { Telerik.Web.UI.GridBoundColumn campo = new Telerik.Web.UI.GridBoundColumn(); detailTable.Columns.Add(campo); campo.UniqueName = "col" + dc.ColumnName; campo.HeaderText = "[ " + dc.ColumnName + " ]"; campo.HeaderStyle.Font.Bold = true; campo.HeaderStyle.HorizontalAlign = HorizontalAlign.Center; campo.DataField = dc.ColumnName; if (dc.ColumnName == "Id") { campo.Visible = false; } if (dc.ColumnName == "prodSkucode") { campo.Visible = false; } if (dc.ColumnName == "Talla") { campo.ReadOnly = true; } } Telerik.Web.UI.GridEditCommandColumn campoEdit = new Telerik.Web.UI.GridEditCommandColumn(); detailTable.Columns.Add(campoEdit); campoEdit.UniqueName = "colEdit"; campoEdit.ButtonType = Telerik.Web.UI.GridButtonColumnType.LinkButton; campoEdit.EditText = "Editar"; campoEdit.UpdateText = "Actualizar"; campoEdit.CancelText = "Cancelar"; detailTable.DataSource = datTabDatosDetalle; detailTable.Rebind(); radGriOrdComDetalles.Rebind();var _menu = $find('<%=Menu.ClientID%>');Hello,
I've places a Target-Source listbox on my User Registration form. Transferring items between de listboxes is no problem but when I commit the data with the Create User button I receive a 'Index was out of range' error.
Any idea?
See attached code.
<%@ Page Title="Register" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeBehind="Register.aspx.cs" Inherits="YBS.Account.Register" %> <%@ Register assembly="Telerik.Web.UI" namespace="Telerik.Web.UI" tagprefix="telerik" %> <asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent"> </asp:Content> <asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent"> <asp:CreateUserWizard ID="RegisterUser" runat="server" EnableViewState="False" OnCreatedUser="RegisterUser_CreatedUser"> <LayoutTemplate> <asp:PlaceHolder ID="wizardStepPlaceholder" runat="server"></asp:PlaceHolder> <asp:PlaceHolder ID="navigationPlaceholder" runat="server"></asp:PlaceHolder> </LayoutTemplate> <WizardSteps> <asp:CreateUserWizardStep ID="RegisterUserWizardStep" runat="server"> <ContentTemplate> <span class="failureNotification"> <asp:Literal ID="ErrorMessage" runat="server"></asp:Literal> </span> <asp:ValidationSummary ID="RegisterUserValidationSummary" runat="server" CssClass="failureNotification" ValidationGroup="RegisterUserValidationGroup"/> <div class="accountInfo"> <fieldset class="register"> <legend><h2>Create a New Account</h2></legend> <table runat="server" id="tblRegister" style="width:100%" border="0"> <tr> <td align="right" style="width:125px"> <asp:Label ID="NameLabel" runat="server" AssociatedControlID="tbName">Name:</asp:Label> </td> <td align="left"> <asp:TextBox ID="tbName" runat="server" CssClass="textEntry"></asp:TextBox> <asp:RequiredFieldValidator ID="NameRequired" runat="server" ControlToValidate="tbName" CssClass="failureNotification" ErrorMessage="Name is required." ToolTip="Name is required." ValidationGroup="RegisterUserValidationGroup">*</asp:RequiredFieldValidator> </td> </tr> <tr> <td align="right" style="width:125px"> <asp:Label ID="UserNameLabel" runat="server" AssociatedControlID="UserName">User Name:</asp:Label> </td> <td align="left"> <asp:TextBox ID="UserName" runat="server" CssClass="textEntry"></asp:TextBox> <asp:RequiredFieldValidator ID="UserNameRequired" runat="server" ControlToValidate="UserName" CssClass="failureNotification" ErrorMessage="User Name is required." ToolTip="User Name is required." ValidationGroup="RegisterUserValidationGroup">*</asp:RequiredFieldValidator> </td> </tr> <tr> <td align="right" style="width:125px"> <asp:Label ID="EmailLabel" runat="server" AssociatedControlID="Email">E-mail:</asp:Label> </td> <td align="left"> <asp:TextBox ID="Email" runat="server" CssClass="textEntry"></asp:TextBox> <asp:RequiredFieldValidator ID="EmailRequired" runat="server" ControlToValidate="Email" CssClass="failureNotification" ErrorMessage="E-mail is required." ToolTip="E-mail is required." ValidationGroup="RegisterUserValidationGroup">*</asp:RequiredFieldValidator> </td> </tr> <tr> <td align="right" style="width:125px"> <asp:Label ID="PasswordLabel" runat="server" AssociatedControlID="Password">Password:</asp:Label> </td> <td align="left"> <asp:TextBox ID="Password" runat="server" CssClass="passwordEntry" TextMode="Password"></asp:TextBox> <asp:RequiredFieldValidator ID="PasswordRequired" runat="server" ControlToValidate="Password" CssClass="failureNotification" ErrorMessage="Password is required." ToolTip="Password is required." ValidationGroup="RegisterUserValidationGroup">*</asp:RequiredFieldValidator> <i>(Minimum of <%= Membership.MinRequiredPasswordLength %> characters required!)</i> </td> </tr> <tr> <td align="right" style="width:125px"> <asp:Label ID="ConfirmPasswordLabel" runat="server" AssociatedControlID="ConfirmPassword">Confirm Password:</asp:Label> </td> <td align="left"> <asp:TextBox ID="ConfirmPassword" runat="server" CssClass="passwordEntry" TextMode="Password"></asp:TextBox> <asp:RequiredFieldValidator ControlToValidate="ConfirmPassword" CssClass="failureNotification" Display="Dynamic" ErrorMessage="Confirm Password is required." ID="ConfirmPasswordRequired" runat="server" ToolTip="Confirm Password is required." ValidationGroup="RegisterUserValidationGroup">*</asp:RequiredFieldValidator> <asp:CompareValidator ID="PasswordCompare" runat="server" ControlToCompare="Password" ControlToValidate="ConfirmPassword" CssClass="failureNotification" Display="Dynamic" ErrorMessage="The Password and Confirmation Password must match." ValidationGroup="RegisterUserValidationGroup">*</asp:CompareValidator> </td> </tr> <tr> <td align="right" style="width:125px"> </td> <td align="left"> <table id="tblCompany" runat="server"> <tr> <td valign="top"> <telerik:RadListBox ID="rlbSourceCompany" runat="server" Skin="Windows7" AllowTransfer="True" TransferToID="rlbTargetCompany" Width="275px" Height="200px" DataKeyField="CompanyID" DataSourceID="SqlDSCompany" DataTextField="Company"> <HeaderTemplate> <center><asp:Label ID="lblSourceCompany" runat="server" Text="All companies" Font-Bold="true" /></center> </HeaderTemplate> </telerik:RadListBox> </td> <td valign="top"> <telerik:RadListBox ID="rlbTargetCompany" runat="server" Skin="Windows7" Width="250px" Height="200px"> <HeaderTemplate> <center><asp:Label ID="lblTargetCompany" runat="server" Text="Selected companies" Font-Bold="true" /></center> </HeaderTemplate> </telerik:RadListBox> </td> </tr> </table> </td> </tr> </table> </fieldset> <p class="submitButton"> <asp:Button ID="CreateUserButton" runat="server" CommandName="MoveNext" Text="Create User" ValidationGroup="RegisterUserValidationGroup"/> </p> </div> </ContentTemplate> <CustomNavigationTemplate> </CustomNavigationTemplate> </asp:CreateUserWizardStep> <asp:CompleteWizardStep runat="server"></asp:CompleteWizardStep> </WizardSteps> </asp:CreateUserWizard> <asp:SqlDataSource ID="SqlDSCompany" runat="server" ConnectionString="<%$ ConnectionStrings:Yosi %>" SelectCommand="SELECT C.CompanyID, (C.Description + ' (' + D.Description + ')') AS Company FROM SYS_Domain D INNER JOIN SYS_Company AS C ON D.DomainID = C.DomainID ORDER BY D.Code, C.Code "></asp:SqlDataSource> </asp:Content>using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Collections.Specialized; using System.Data; using System.Data.SqlClient; using System.Text; using System.Configuration; using YBS.Membership; using YBS.Manager; using YBS.SQLDAL; using YBS.SQLDAL.Entities; using Telerik.Web; using Telerik.Web.UI; namespace YBS.Account { public partial class Register : System.Web.UI.Page { private YBS.Manager.YBSBaseFunctions hdlBaseFunctions = new Manager.YBSBaseFunctions(); public static String ConnString = ConfigurationManager.ConnectionStrings["Yosi"].ConnectionString; protected void Page_Load(object sender, EventArgs e) { RegisterUser.ContinueDestinationPageUrl = Request.QueryString["ReturnUrl"]; SetObjectProperties(); } protected void RegisterUser_CreatedUser(object sender, EventArgs e) { TextBox tbName = (TextBox)RegisterUserWizardStep.ContentTemplateContainer.FindControl("tbName"); FormsAuthentication.SetAuthCookie(RegisterUser.UserName, false /* createPersistentCookie */); int _userID = new SYS_UserDAL().GetUserID(RegisterUser.UserName); hdlBaseFunctions.SetCurrentUserID(this.Context, _userID); if (tbName != null) { new YBSMembershipProvider().ChangeName(RegisterUser.UserName, tbName.Text); } SaveUserCompany(_userID); string continueUrl = RegisterUser.ContinueDestinationPageUrl; if (String.IsNullOrEmpty(continueUrl)) { continueUrl = "~/"; } Response.Redirect(continueUrl); } protected override void OnInit(EventArgs e) { base.OnInit(e); if (!Page.IsPostBack) { string sSQLCompany = ""; sSQLCompany += "SELECT C.CompanyID, (C.Description + ' (' + D.Description + ')') AS Company "; sSQLCompany += "FROM SYS_Domain D "; sSQLCompany += "INNER JOIN SYS_Company AS C ON D.DomainID = C.DomainID "; sSQLCompany += "ORDER BY D.Code, C.Code"; SqlDSCompany.SelectCommandType = SqlDataSourceCommandType.Text; SqlDSCompany.SelectCommand = sSQLCompany; } } protected override void OnLoad(EventArgs e) { base.OnLoad(e); } protected void SetObjectProperties() { RadListBox rlbSourceCompany = (RadListBox)RegisterUserWizardStep.ContentTemplateContainer.FindControl("rlbSourceCompany"); RadListBox rlbTargetCompany = (RadListBox)RegisterUserWizardStep.ContentTemplateContainer.FindControl("rlbTargetCompany"); if (rlbSourceCompany != null) { rlbSourceCompany.Skin = "Windows7"; rlbSourceCompany.SelectionMode = ListBoxSelectionMode.Multiple; rlbSourceCompany.AllowTransferOnDoubleClick = true; rlbSourceCompany.Header.Visible = true; rlbSourceCompany.AllowTransferDuplicates = false; rlbSourceCompany.AllowReorder = false; } if (rlbTargetCompany != null) { rlbTargetCompany.Skin = "Windows7"; rlbTargetCompany.AllowReorder = false; rlbTargetCompany.AllowDelete = false; } } protected void SaveUserCompany(int iUserID) { /* RadListBox rlbTargetCompany = (RadListBox)RegisterUserWizardStep.ContentTemplateContainer.FindControl("rlbTargetCompany"); if (rlbTargetCompany.Items.Count > 0) { foreach (RadListBoxItem rlbItem in rlbTargetCompany.Items) { SYS_UserCompanyDAL.SYS_UserCompany _objUserCompany = new SYS_UserCompanyDAL.SYS_UserCompany(); _objUserCompany.UserID = iUserID; _objUserCompany.CompanyID = Convert.ToInt32(rlbItem.DataKey); } } */ } } }