Hi,
I have this grid with an EditFormTemplate :
Code behind is c#
Two problems:
1)
In the main grid the column password is set to visible=false. In the edit form template the value in "password" column is not displayed when the form is opened for edit/update. This cause a problem because:
A) the admin editing the record thinks that the value does not exist
B) having set a validator on such filed is not possible to update the record without entering a new password.
I would like to show the classic ************* without having to fight with the validator regex on a new update of the record.
How can I achieve that?
2)
I have set the default value of username and password to "" because on opening of a new record, the form displays the admin username and the password in password mode ******* in the relevant text boxes which should not happen but for some reason the values of the logged admin get displayed in those text boxes by default!
Is there a way to avoid this behavior rather than setting the default values to ""?
I have attached a picture, taken from the production server on creating a new record, showing such behavior when the default value of those two text boxes is not set to "".
Thanks,
Felice
I have this grid with an EditFormTemplate :
<telerik:RadGrid ID="RadGrid1" runat="server" AllowAutomaticDeletes="True" AllowAutomaticInserts="True" AllowAutomaticUpdates="True" AllowPaging="True" AllowSorting="True" Culture="it-IT" DataSourceID="SqlDataSource1" PageSize="20" Width="100%" Skin="Outlook"> <ExportSettings> <Pdf PageWidth=""> </Pdf> </ExportSettings> <MasterTableView AutoGenerateColumns="False" CommandItemDisplay="Top" DataKeyNames="Id" DataSourceID="SqlDataSource1"> <Columns> <telerik:GridEditCommandColumn ButtonType="ImageButton"> <HeaderStyle Width="30px" /> </telerik:GridEditCommandColumn> <telerik:GridBoundColumn DataField="Id" DataType="System.Int32" FilterControlAltText="Filter Id column" HeaderText="Id" ReadOnly="True" SortExpression="Id" UniqueName="Id"> <ColumnValidationSettings> <ModelErrorMessage Text="" /> </ColumnValidationSettings> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="name" FilterControlAltText="Filter name column" HeaderText="Name" SortExpression="name" UniqueName="name"> <ColumnValidationSettings EnableModelErrorMessageValidation="True" EnableRequiredFieldValidation="True" RenderValidatorBeforeEditor="True"> <RequiredFieldValidator ErrorMessage="This filed is required! " ForeColor="Red"></RequiredFieldValidator> </ColumnValidationSettings> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="surname" FilterControlAltText="Filter surname column" HeaderText="Surname" SortExpression="surname" UniqueName="surname"> <ColumnValidationSettings EnableModelErrorMessageValidation="True" EnableRequiredFieldValidation="True" RenderValidatorBeforeEditor="True"> <RequiredFieldValidator ErrorMessage="This filed is required! " ForeColor="Red"></RequiredFieldValidator> </ColumnValidationSettings> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="userName" DefaultInsertValue="" FilterControlAltText="Filter userName column" HeaderText="User Name" SortExpression="userName" UniqueName="userName"> <ColumnValidationSettings EnableModelErrorMessageValidation="True" EnableRequiredFieldValidation="True" RenderValidatorBeforeEditor="True"> <RequiredFieldValidator ErrorMessage="This filed is required! " ForeColor="Red"></RequiredFieldValidator> </ColumnValidationSettings> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="password" DefaultInsertValue="" FilterControlAltText="Filter password column" HeaderText="Password" SortExpression="password" UniqueName="password" Display="False"> <ColumnValidationSettings EnableModelErrorMessageValidation="True" EnableRequiredFieldValidation="True" RenderValidatorBeforeEditor="True"> <RequiredFieldValidator ErrorMessage="This filed is required! " ForeColor="Red"></RequiredFieldValidator> </ColumnValidationSettings> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="email" DefaultInsertValue="@stadlerrail.com" FilterControlAltText="Filter email column" HeaderText="Email" SortExpression="email" UniqueName="email"> <ColumnValidationSettings EnableModelErrorMessageValidation="True" EnableRequiredFieldValidation="True" RenderValidatorBeforeEditor="True"> <RequiredFieldValidator ErrorMessage="This filed is required! " ForeColor="Red"></RequiredFieldValidator> </ColumnValidationSettings> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="telephone" DefaultInsertValue="+" FilterControlAltText="Filter telephone column" HeaderText="Telephone" SortExpression="telephone" UniqueName="telephone"> <ColumnValidationSettings EnableModelErrorMessageValidation="True" EnableRequiredFieldValidation="True" RenderValidatorBeforeEditor="True"> <RequiredFieldValidator ErrorMessage="This filed is required! " ForeColor="Red"></RequiredFieldValidator> </ColumnValidationSettings> </telerik:GridBoundColumn> <telerik:GridButtonColumn ButtonType="ImageButton" Text="Delete" CommandName="Delete" FilterControlAltText="Filter column1 column" ConfirmDialogType="RadWindow" ConfirmText="Do you really want to delete this project and all its content?" UniqueName="column1"> <HeaderStyle Width="30px" /> </telerik:GridButtonColumn> </Columns> <EditFormSettings EditFormType="Template"> <EditColumn UniqueName="EditCommandColumn1" FilterControlAltText="Filter EditCommandColumn1 column"></EditColumn> <FormTemplate> <style type="text/css"> .auto-style1 { width: 100%; background-color: azure; } .auto-style2 { width: 84px; } .auto-style5 { text-align: left; width: 386px; } </style> <table class="auto-style1"> <tr> <td class="auto-style2"></td> <td class="auto-style5"> </td> </tr> <tr> <td class="auto-style2">Name:</td> <td class="auto-style5"> <asp:TextBox ID="name" runat="server" Width="200px" Height="22px" Text='<%# Bind( "name" ) %>'>></asp:TextBox> <asp:RequiredFieldValidator ID="RequiredFieldValidator2" ControlToValidate="name" ErrorMessage="This field shall be filled" runat="server" BackColor="Red"> </asp:RequiredFieldValidator> <asp:RegularExpressionValidator ID="validateName" runat="server" ErrorMessage="Invalid Name. You shall insert letters only." ForeColor="Red" ControlToValidate="name" ValidationExpression="^[^\W\d_]+$" /> </td> </tr> <tr> <td class="auto-style2">Surname:</td> <td class="auto-style5"> <asp:TextBox ID="surname" runat="server" Width="200px" Height="22px" Text='<%# Bind( "surname" ) %>'>></asp:TextBox> <asp:RequiredFieldValidator ID="RequiredFieldValidator3" ControlToValidate="surname" ErrorMessage="This field shall be filled" runat="server" BackColor="Red"> </asp:RequiredFieldValidator> <asp:RegularExpressionValidator ID="validateSurname" runat="server" ErrorMessage="Invalid Surname. You shall insert letters only." ForeColor="Red" ControlToValidate="surname" ValidationExpression="^[^\W\d_]+$" /> </td> </tr> <tr> <td class="auto-style2">User Name:</td> <td class="auto-style5"> <asp:TextBox ID="userName" runat="server" Width="200px" Height="22px" Text='<%# Bind( "userName" ) %>'>></asp:TextBox> <asp:RequiredFieldValidator ID="RequiredFieldValidator1" ControlToValidate="UserName" ErrorMessage="This field shall be filled" runat="server" BackColor="Red"> </asp:RequiredFieldValidator> </td> </tr> <tr> <td class="auto-style2">Password:</td> <td class="auto-style5"> <asp:TextBox ID="password" runat="server" Width="200px" TextMode="Password" Height="22px" Text='<%# Bind( "password" ) %>'>></asp:TextBox> <asp:RequiredFieldValidator ID="RequiredFieldValidator7" ControlToValidate="password" ErrorMessage="This field shall be filled" runat="server" BackColor="Red"> </asp:RequiredFieldValidator> <asp:RegularExpressionValidator ID="validatePassword" runat="server" ErrorMessage="Password shall at least 8 characters that contains at least one lowercase and one uppercase ASCII character and also at least one character from the set @#$%^&+= (in any order)" ForeColor="Red" ControlToValidate="password" ValidationExpression="^(?=.{8,})(?=.*[a-z])(?=.*[A-Z])(?=.*[@#$%^&+=]).*$" /> </td> </tr> <tr> <td class="auto-style2">Email:</td> <td class="auto-style5"> <asp:TextBox ID="email" runat="server" Width="200px" Height="22px" Text='<%# Bind( "email" ) %>'>></asp:TextBox> <asp:RequiredFieldValidator ID="RequiredFieldValidator9" ControlToValidate="email" ErrorMessage="This field shall be filled" runat="server" BackColor="Red"> </asp:RequiredFieldValidator> <asp:RegularExpressionValidator ID="validateEmail" runat="server" ErrorMessage="Invalid email. name.surname@stadlerrail.com" ForeColor="Red" ControlToValidate="email" ValidationExpression="^[a-zA-Z0-9_]+\.[a-zA-Z0-9_]+@stadlerrail.com$" /> </td> </tr> <tr> <td class="auto-style2">Telephone:</td> <td class="auto-style5"> <asp:TextBox ID="telephone" runat="server" Width="200px" Height="22px" Text='<%# Bind( "telephone" ) %>'>></asp:TextBox> </td> </tr> <tr> <td class="auto-style2"> </td> <td> </td> </tr> <tr> <td class="auto-style2"> </td> <td class="auto-style5"> <asp:Button ID="btnUpdate" Text='<%# (Container is GridEditFormInsertItem) ? "Insert" : "Update" %>' runat="server" CommandName='<%# (Container is GridEditFormInsertItem) ? "PerformInsert" : "Update" %>'></asp:Button> <asp:Button ID="btnCancel" Text="Cancel" runat="server" CausesValidation="False" CommandName="Cancel" Style="text-align: right"></asp:Button> </td> </tr> </table> </FormTemplate> </EditFormSettings> </MasterTableView> </telerik:RadGrid>Code behind is c#
Two problems:
1)
In the main grid the column password is set to visible=false. In the edit form template the value in "password" column is not displayed when the form is opened for edit/update. This cause a problem because:
A) the admin editing the record thinks that the value does not exist
B) having set a validator on such filed is not possible to update the record without entering a new password.
I would like to show the classic ************* without having to fight with the validator regex on a new update of the record.
How can I achieve that?
2)
I have set the default value of username and password to "" because on opening of a new record, the form displays the admin username and the password in password mode ******* in the relevant text boxes which should not happen but for some reason the values of the logged admin get displayed in those text boxes by default!
Is there a way to avoid this behavior rather than setting the default values to ""?
I have attached a picture, taken from the production server on creating a new record, showing such behavior when the default value of those two text boxes is not set to "".
Thanks,
Felice