CommandField.CausesValidation Vlastnost

Definice

Získá nebo nastaví hodnotu označující, zda je ověření provedeno, když uživatel klikne na tlačítko v CommandField poli.

public:
 virtual property bool CausesValidation { bool get(); void set(bool value); };
public override bool CausesValidation { get; set; }
member this.CausesValidation : bool with get, set
Public Overrides Property CausesValidation As Boolean

Hodnota vlastnosti

Boolean

true k provedení ověření, když uživatel klikne na tlačítko v CommandField poli; v opačném případě false. Výchozí formát je true.

Příklady

Následující příklad kódu ukazuje, jak použít CausesValidation vlastnost, aby se zabránilo ověření při kliknutí na tlačítko v CommandField poli.

Důležité

V tomto příkladu je textové pole, které přijímá vstup uživatele, což je potenciální bezpečnostní hrozba. Ve výchozím nastavení ASP.NET webové stránky ověřují, že vstup uživatele neobsahuje skripty ani elementy HTML. Další informace najdete v tématu Přehled zneužití skriptů.

<%@ Page language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>CommandField CausesValidation Example</title>
</head>
<body>
    <form id="form1" runat="server">
        
      <h3>CommandField CausesValidation Example</h3>

      <!-- Normally, the validation controls declared in the            -->
      <!-- EditItemTemplate of each TemplateField field column would    -->
      <!-- prevent the user from leaving a field value empty; however,  -->
      <!-- because the CausesValidation property of the CommandField    -->
      <!-- field column is set to false, validation does not occur when -->
      <!-- the user clicks a button in the CommandField field column.   -->
      <asp:gridview id="CustomerGridView" 
        datasourceid="CustomersSqlDataSource" 
        autogeneratecolumns="false"
        datakeynames="CustomerID"
        cellpadding="10"   
        runat="server">
                
        <columns>
        
          <asp:commandfield showeditbutton="true"
            causesvalidation="false"
            headertext="Edit"/> 
        
          <asp:boundfield datafield="CustomerID"
            headertext="Customer ID"
            readonly="true"/>
            
          <asp:templatefield headertext="Company Name"
            itemstyle-verticalalign="Top">
            
            <itemtemplate>
              <%#Eval("CompanyName")%>
            </itemtemplate>
            
            <edititemtemplate>
              <asp:textbox id="CompanyNameTextBox"
                text='<%#Bind("CompanyName")%>'
                width="90"
                runat="server"/>
              <br/>
              <asp:requiredfieldvalidator id="CompanyNameRequiredValidator"
                controltovalidate="CompanyNameTextBox"
                display="Dynamic"
                text="Please enter the company name." 
                runat="server"/>                                      
            </edititemtemplate>
            
          </asp:templatefield>
          
          <asp:templatefield headertext="Address"
            itemstyle-verticalalign="Top">
            
            <itemtemplate>
              <%#Eval("Address")%>
            </itemtemplate>
            
            <edititemtemplate>
              <asp:textbox id="AddressTextBox"
                text='<%#Bind("Address")%>'
                width="90"
                runat="server"/>
              <br/>
              <asp:requiredfieldvalidator id="AddressRequiredValidator"
                controltovalidate="AddressTextBox"
                display="Dynamic"
                text="Please enter the address."
                runat="server"/>                      
            </edititemtemplate>
            
          </asp:templatefield>
          
          <asp:templatefield headertext="City"
            itemstyle-verticalalign="Top">
            
            <itemtemplate>
              <%#Eval("City")%>
            </itemtemplate>
            
            <edititemtemplate>
              <asp:textbox id="CityTextBox"
                text='<%#Bind("City")%>'
                width="90"
                runat="server"/>
              <br/>
              <asp:requiredfieldvalidator id="CityRequiredValidator"
                controltovalidate="CityTextBox"
                display="Dynamic"
                text="Please enter the city."
                runat="server"/>                      
            </edititemtemplate>
            
          </asp:templatefield>
            
        </columns>
                
      </asp:gridview>
            
      <!-- This example uses Microsoft SQL Server and connects  -->
      <!-- to the Northwind sample database. Use an ASP.NET     -->
      <!-- expression to retrieve the connection string value   -->
      <!-- from the Web.config file.                            -->
      <asp:sqldatasource id="CustomersSqlDataSource"  
        selectcommand="Select [CustomerID], [CompanyName], [Address], [City] From [Customers]"             
        updatecommand="Update [Customers] Set [CompanyName]=@CompanyName, [Address]=@Address, [City]=@City Where [CustomerID] = @CustomerID" 
        connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>"
        runat="server">
      </asp:sqldatasource>
            
    </form>
  </body>
</html>
<%@ Page language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>CommandField CausesValidation Example</title>
</head>
<body>
    <form id="form1" runat="server">
        
      <h3>CommandField CausesValidation Example</h3>

      <!-- Normally, the validation controls declared in the            -->
      <!-- EditItemTemplate of each TemplateField field column would    -->
      <!-- prevent the user from leaving a field value empty; however,  -->
      <!-- because the CausesValidation property of the CommandField    -->
      <!-- field column is set to false, validation does not occur when -->
      <!-- the user clicks a button in the CommandField field column.   -->
      <asp:gridview id="CustomerGridView" 
        datasourceid="CustomersSqlDataSource" 
        autogeneratecolumns="false"
        datakeynames="CustomerID"
        cellpadding="10"   
        runat="server">
                
        <columns>
        
          <asp:commandfield showeditbutton="true"
            causesvalidation="false"
            headertext="Edit"/> 
        
          <asp:boundfield datafield="CustomerID"
            headertext="Customer ID"
            readonly="true"/>
            
          <asp:templatefield headertext="Company Name"
            itemstyle-verticalalign="Top">
            
            <itemtemplate>
              <%#Eval("CompanyName")%>
            </itemtemplate>
            
            <edititemtemplate>
              <asp:textbox id="CompanyNameTextBox"
                text='<%#Bind("CompanyName")%>'
                width="90"
                runat="server"/>
              <br/>
              <asp:requiredfieldvalidator id="CompanyNameRequiredValidator"
                controltovalidate="CompanyNameTextBox"
                display="Dynamic"
                text="Please enter the company name." 
                runat="server"/>                                      
            </edititemtemplate>
            
          </asp:templatefield>
          
          <asp:templatefield headertext="Address"
            itemstyle-verticalalign="Top">
            
            <itemtemplate>
              <%#Eval("Address")%>
            </itemtemplate>
            
            <edititemtemplate>
              <asp:textbox id="AddressTextBox"
                text='<%#Bind("Address")%>'
                width="90"
                runat="server"/>
              <br/>
              <asp:requiredfieldvalidator id="AddressRequiredValidator"
                controltovalidate="AddressTextBox"
                display="Dynamic"
                text="Please enter the address."
                runat="server"/>                      
            </edititemtemplate>
            
          </asp:templatefield>
          
          <asp:templatefield headertext="City"
            itemstyle-verticalalign="Top">
            
            <itemtemplate>
              <%#Eval("City")%>
            </itemtemplate>
            
            <edititemtemplate>
              <asp:textbox id="CityTextBox"
                text='<%#Bind("City")%>'
                width="90"
                runat="server"/>
              <br/>
              <asp:requiredfieldvalidator id="CityRequiredValidator"
                controltovalidate="CityTextBox"
                display="Dynamic"
                text="Please enter the city."
                runat="server"/>                      
            </edititemtemplate>
            
          </asp:templatefield>
            
        </columns>
                
      </asp:gridview>
            
      <!-- This example uses Microsoft SQL Server and connects  -->
      <!-- to the Northwind sample database. Use an ASP.NET     -->
      <!-- expression to retrieve the connection string value   -->
      <!-- from the Web.config file.                            -->
      <asp:sqldatasource id="CustomersSqlDataSource"  
        selectcommand="Select [CustomerID], [CompanyName], [Address], [City] From [Customers]"             
        updatecommand="Update [Customers] Set [CompanyName]=@CompanyName, [Address]=@Address, [City]=@City Where [CustomerID] = @CustomerID" 
        connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>"
        runat="server">
      </asp:sqldatasource>
            
    </form>
  </body>
</html>

Poznámky

CausesValidation Pomocí vlastnosti určete, zda se provádí ověření při kliknutí na tlačítko v CommandField poli. Pokud je tato vlastnost nastavena na true, ve výchozím nastavení jsou ověřeny všechny ověřovací ovládací prvky na stránce. Chcete-li omezit ověřování pouze na určitou skupinu ověřovacích ovládacích prvků, vytvořte ověřovací skupinu a potom nastavte ValidationGroup vlastnost na název ověřovací skupiny. Další informace o ověřovacích skupinách najdete v tématu BaseValidator.ValidationGroup.

Platí pro

Viz také