Добавление валидатора в текстовое поле вида сетки, созданное в режиме редактирования связанного поля - PullRequest
2 голосов
/ 06 октября 2009

взгляните на этот пример кода: (вопрос ниже)

<asp:GridView ID="GridView1" runat="server" AllowPaging="True" 
    AllowSorting="True" DataSourceID="SqlDataSource2" 
    AutoGenerateColumns="False" onrowupdated="GridView1_RowUpdated" 
         DataKeyNames="Product_Id">
    <Columns>
    <asp:ImageField DataImageUrlField="Image_Name" HeaderText="Image_Name" 
           ReadOnly="True" >
    <ItemStyle Width="50px" Height="50px"  Wrap="true"/>
    </asp:ImageField>       
    <asp:BoundField DataField="Product_Id" HeaderText="Product_Id" 
           InsertVisible="False" ReadOnly="True" SortExpression="Product_Id">
    </asp:BoundField>
        <asp:BoundField DataField="Product_Name" HeaderText="Product_Name" 
            SortExpression="Product_Name" />
        <asp:BoundField DataField="Category_Name" HeaderText="Category_Name" 
            SortExpression="Category_Name" ReadOnly="true" />
        <asp:BoundField DataField="Description" HeaderText="Description" 
            SortExpression="Description" />
        <asp:BoundField DataField="Size" HeaderText="Size" 
                 SortExpression="Size" />
        <asp:BoundField DataField="Price" HeaderText="Price" 
                 SortExpression="Price" />
        <asp:CommandField ShowEditButton="True" />
        <asp:CommandField ShowDeleteButton="True" />
    </Columns>
</asp:GridView>

Предположим, я инициализирую SqlDataSource, добавляю параметр и т. Д.

Дело в том, что когда пользователь нажимает кнопку редактирования, мы получаем текстовое поле для редактирования значения столбца. Я хочу проверить данные, введенные пользователем, перед выполнением обновления и новым данные передаются обратно на сервер. Как?

10х много!

Ответы [ 2 ]

2 голосов
/ 06 октября 2009

Вам необходимо преобразовать BoundField в TemplateField . Затем вы можете добавить валидатор к фактическому элементу управления TextBox.

1 голос
/ 06 октября 2009

Вариант 1:

Но из НЕИЗВЕСТНОГО ответа Microsoft рекомендует то же самое ... как он сказал.

ref: http://msdn.microsoft.com/en-us/library/bb426882.aspx#aspnett19_vldcntredtuics_topic2

Вариант 2:

Но мы можем сделать.

Необходимо добавить проверку либо проверки JavaScript, либо проверки на стороне сервера.

элемент управления, когда событие DataBound GridView происходит во время выполнения на конкретном

TableCell строк Gridview.

Следовательно, при нажатии кнопки обновления пользовательский сгенерированный JavaScript или проверка

Элемент управления проверит правильность редактирования значений.

Этот процесс сложнее, чем преобразование ограниченного поля в поле шаблона

см .: http://www.aspdotnetcodes.com/GridView_Dynamic_Validation.aspx

Вариант 3:

И вы можете пойти на проверку на стороне сервера значений вместо проверки на стороне клиента:

см .: http://msdn.microsoft.com/en-us/library/bb332383.aspx

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...