У меня есть вложенный ListView на моей веб-странице ASP.NET, внутренний ListView имеет шаблон InsertItem, в котором я должен проверять записи пользователя и выдавать предупреждения (используя RequiredValidator и RegExpValidator и AJAX Extenders для добавления вызовов).К сожалению, поскольку InsertTemplate реплицируется для каждого связанного элемента, ValidationGroup остается неизменным для каждого независимого внутреннего ListView, и для проверки требуется запись во всех полях всех ListViews на странице, а не только из текущего шаблона InsertItem.
Любая идея, как я могу, вероятно, установить свойство ValidationProperty в динамическое значение?
Вот (очищенный и сводится к проблеме) кусок моего кода страницы ASP.NET:
<asp:ListView ID="lstCatQualis" runat="server" ItemPlaceholderID="listQualiCats">
</LayoutTemplate>
<ItemTemplate>
</tr>
<asp:ListView ID="listQualiItems" ItemPlaceholderID="itemPlaceHolder" runat="server" DataSource='<%# Eval("Qualis") %>' InsertItemPosition="LastItem">
<InsertItemTemplate>
<tr id="quali" runat="server">
<td class="first">
</td>
<td class="qualirating">
<asp:TextBox ID="txtQualiName" runat="server" Width="250" TabIndex='1' />
<asp:RequiredFieldValidator ID="rv1" runat="server" ControlToValidate="txtQualiName"
Display="None" ErrorMessage="Bitte geben Sie Ihre Qualifikation ein."
ValidationGroup="quali"></asp:RequiredFieldValidator>
<asp:ValidatorCalloutExtender ID="vco19" runat="server" TargetControlID="rv1">
</asp:ValidatorCalloutExtender>
</td>
<td class="qualirating">
<asp:TextBox ID="txtJahreErfahrung" runat="server" TabIndex='1' />
<asp:RequiredFieldValidator ID="rv2" runat="server" ControlToValidate="txtJahreErfahrung"
Display="None" ErrorMessage="Bitte tragen Sie die Anzhal der Jahre ein."
ValidationGroup="quali"></asp:RequiredFieldValidator>
<asp:ValidatorCalloutExtender ID="vco2" runat="server" TargetControlID="rv2">
</asp:ValidatorCalloutExtender>
<asp:RegularExpressionValidator ID="ev2" runat="server" ErrorMessage="Geben Sie bitte eine Zahl ein."
Display="None" ControlToValidate="txtJahreErfahrung" ValidationExpression="[1-9][0-9]{0,3}"
ValidationGroup="quali"></asp:RegularExpressionValidator>
<asp:ValidatorCalloutExtender ID="vcoe2" runat="server" Enabled="True" TargetControlID="ev2">
</asp:ValidatorCalloutExtender>
</td>
<td class="qualilabel">
<asp:button ID="btnAddCatQuali" OnClick="btnAddCatQuali_Clicked" runat="server" text='Hinzufügen' TabIndex='1' ValidationGroup="quali" />
</td>
</tr>
</InsertItemTemplate>
</asp:ListView>
</ItemTemplate>
</asp:ListView>