Я использую Последовательность PNM .И мне нужно сделать один столбец сетки в качестве обязательного поля.
Я знаю, как сделать это с любым отдельным элементом управления.Например, я могу набрать:
<sq8:GridBoundColumn DataField="txtField" HeaderText="txtField"
SortExpression="txtField" UniqueName="txtField" FilterControlAltText="">
<ColumnValidationSettings>
<RequiredFieldValidator ForeColor=""></RequiredFieldValidator>
</ColumnValidationSettings>
</sq8:GridBoundColumn>
И я могу использовать этот валидатор для TextBox
:
<sq8:Label runat="server" Text="Field:" ID="Label1" Width="100%"></sq8:Label>
<nobr>
<sq8:TextBox runat="server" ID="txtField" Width="100%"></sq8:TextBox>
<sq8:RequiredFieldValidator runat="server"
ErrorMessage="RequiredFieldValidator"
ID="RequiredFieldValidator4"
ControlToValidate="txtField"
SetFocusOnError="True">*</sq8:RequiredFieldValidator>
</nobr>
<sq:BindableControl runat="server" TargetControlID="txtField"
DataField="txtField"></sq:BindableControl>
И это работает.Пользователь не может отправить форму, потому что он получает ошибку - поле пусто.
Но мне нужно сделать то же самое с сеткой.
Когда я открываю "Edit columns"
в Grid Wizard
, я не вижу никакого свойства как "обязательного" или что-то вроде этого.
И код с RequiredFieldValidator
не работает со столбцом сетки.Если я пытаюсь его использовать:
<Columns>
<sq8:GridBoundColumn DataField="txtFieldGrid" HeaderText="txtFieldGrid"
SortExpression="txtFieldGrid" UniqueName="txtFieldGrid"
FilterControlAltText="">
<sq8:RequiredFieldValidator runat="server"
ErrorMessage="RequiredFieldValidator"
ID="RequiredFieldValidator4"
ControlToValidate="txtFieldGrid"
SetFocusOnError="True">*</sq8:RequiredFieldValidator>
<sq:BindableControl runat="server" TargetControlID="txtFieldGrid"
DataField="txtFieldGrid"></sq:BindableControl>
</sq8:GridBoundColumn>
</Columns>
В этом случае у меня появляется ошибка:
Есть ли какой-нибудь метод для проверки столбцов сетки?Или это невозможно с сеткой?
Может быть, я могу использовать некоторые JavaScript?