Пользовательская проверка в RadComboBox не работает

#vb.net #validation #radcombobox

Вопрос:

В настоящее время я работаю над проектом в vb.net и у меня возникли проблемы с тем, чтобы мой пользовательский валидатор работал на radcombobox. Когда я запускаю свое приложение и проверяю проверку, оно не вызывается, что приводит к сбою моего приложения. Я не рассматриваю проверку на стороне клиента, только на стороне сервера. Ниже приведен код, который я использовал.

Код Aspx

 lt;tdgt;  lt;telerik:RadComboBox ID="radcomboboxListTimeZone" runat="server" BorderColor="#bbe0ef"  BorderWidth="2px" Width="400px" MaxHeight="200px"   DataSourceID="ObjectDataSourceListTimeZones"   DataTextField="DisplayName" DataValueField="StandardName" SelectedValue='lt;%#   Bind("TimeZoneStandardName")%gt;'gt;  lt;/telerik:RadComboBoxgt;  lt;asp:CustomValidator ID="CustomValidatorTimeZone" runat="server" ErrorMessage="Please select a   valid Time Zone Standard Name" ControlToValidate="radcomboboxListTimeZone"   OnServerValidate="CustomValidatorListTimeZone_ServerValidate"gt;•lt;/asp:CustomValidatorgt; lt;/tdgt;  

Код на стороне сервера

 Protected Sub CustomValidatorListTimeZone_ServerValidate(ByVal source As Object, ByVal args As   ServerValidateEventArgs)   Dim radcomboboxListTimeZone As RadComboBox =   CType(FormViewTimeZones.FindControl("radcomboboxListTimeZone"), RadComboBox)  Dim selectedValue As String = radcomboboxListTimeZone.SelectedValue   If selectedValue = "Coordinated Universal Time" Then  args.IsValid = False  Else  args.IsValid = True  End If End Sub  

Любая помощь была бы очень признательна.

Ответ №1:

Мне удалось заставить работать пользовательскую проверку на стороне сервера. Для этого я создал группу проверки

 lt;asp:ValidationSummary ID="ValidationSummaryEditItem" runat="server" ValidationGroup="TimeZone" /gt;  

и поставил

 CausesValidation="true"  

на кнопке редактирования и добавил

 ValidationGroup="TimeZone"  

как к кнопке редактирования, так и к пользовательскому валидатору