HtmlForm.DefaultButton Propriedade

Definição

Obtém ou define o controlo filho do HtmlForm controlo que causa o postback quando a tecla ENTER é pressionada.

public:
 property System::String ^ DefaultButton { System::String ^ get(); void set(System::String ^ value); };
public string DefaultButton { get; set; }
member this.DefaultButton : string with get, set
Public Property DefaultButton As String

Valor de Propriedade

O ID controlo do botão para ser exibido como o botão padrão quando HtmlForm está carregado. O valor padrão é uma cadeia vazia ("").

Exceções

O controlo referenciado como botão padrão não é do tipo IButtonControl.

Exemplos

O exemplo seguinte mostra como definir a DefaultButton propriedade para definir o controlo padrão que causa um regresso de post.

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

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">     
   
  void Page_Load(object sender, System.EventArgs e)
  {
    
    // Set the text of the two label controls.
    Label1.Text = "The DefaultButton property is set to "
                + Form1.DefaultButton.ToString() + "<br/>";
    Label2.Text = "The DefaultFocus property is set to "
                + Form1.DefaultFocus.ToString();
  }

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >

<head>

    <title>HtmlForm DefaultButton and DefaultFocus Properties Example</title>

</head>

<body>

  <form id="Form1"
        defaultbutton="SubmitButton"
        defaultfocus="TextBox1"
        runat="server">
    
    <h3>HtmlForm DefaultButton and DefaultFocus Properties Example</h3>        
  
    TextBox1:
    <asp:textbox id="TextBox1"
                 autopostback="true" 
                 runat="server">
    </asp:textbox>
  
    <br />
  
    TextBox2:
    <asp:textbox id="TextBox2"
                 autopostback="true" 
                 runat="server">
    </asp:textbox>
  
    <br /><br />
  
    <asp:button id="SubmitButton"
                text="Submit" 
                runat="server">
    </asp:button>
  
    <asp:button id="CancelButton" 
                text="Cancel"
                runat="server">
    </asp:button>
  
    <hr />
  
    <asp:label id="Label1"
               runat="Server">
    </asp:label>
  
    <asp:label id="Label2"
               runat="Server">
    </asp:label>

  </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">
<script runat="Server">
       
  Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
    
    ' Set the text of the two label controls.
    Label1.Text = "The DefaultButton property is set to " _
                  & Form1.DefaultButton.ToString & "<br/>"
    Label2.Text = "The DefaultFocus property is set to " _
                  & Form1.DefaultFocus.ToString
  End Sub
     
 </script>

<html xmlns="http://www.w3.org/1999/xhtml" >

<head>

    <title>HtmlForm DefaultButton and DefaultFocus Properties Example</title>

</head>

<body>

  <form id="Form1"
        defaultbutton="SubmitButton"
        defaultfocus="TextBox1"
        runat="server">
    
    <h3>HtmlForm DefaultButton and DefaultFocus Properties Example</h3>        
  
    TextBox1:
    <asp:textbox id="TextBox1"
                 autopostback="true" 
                 runat="server">
    </asp:textbox>
  
    <br />
  
    TextBox2:
    <asp:textbox id="TextBox2"
                 autopostback="true" 
                 runat="server">
    </asp:textbox>
  
    <br /><br />
  
    <asp:button id="SubmitButton"
                text="Submit" 
                runat="server">
    </asp:button>
  
    <asp:button id="CancelButton" 
                text="Cancel"
                runat="server">
    </asp:button>
  
    <hr />
  
    <asp:label id="Label1"
               runat="Server">
    </asp:label>
  
    <asp:label id="Label2"
               runat="Server">
    </asp:label>

  </form>

</body>

</html>

Observações

A DefaultButton propriedade permite-lhe especificar que os utilizadores podem causar um retorno de postback pressionando ENTER num controlo de entrada no formulário (como uma caixa de texto). Pode especificar como botão por defeito qualquer controlo que derive da IButtonControl interface, exceto o controlo LinkButton . Se o controlo referenciado pela DefaultButton propriedade não derivar de IButtonControl, é lançada uma InvalidOperationException exceção.

Se estiveres a usar páginas mestras e definires a DefaultButton propriedade a partir de uma página de conteúdo, usa a UniqueID propriedade do IButtonControl botão. Para mais informações sobre páginas-mestre, consulte ASP.NET Páginas Mestres.

A DefaultButton propriedade pode não causar um regresso de postback nos seguintes cenários:

  • Pressionar ENTER quando o foco está fora dos controlos de entrada no formulário. A ação de postback padrão não é garantida de ser ativada.

  • Carregar em ENTER quando o foco está dentro de uma caixa de texto de várias linhas. Numa caixa de texto de várias linhas, o comportamento esperado é que pressionar ENTER crie uma nova linha na caixa de texto. Em alguns navegadores, pressionar ENTER dentro de uma caixa de texto de várias linhas desencadeia um retorno de publicação. Nesse caso, se quiseres que o ENTER crie uma nova linha, podes anexar uma função JavaScript ao controlo de entrada. O script deve captar a tecla ENTER e parar o regresso de postback. Por exemplo, pode usar a Attributes coleção de propriedades para adicionar script cliente para o onKeyPress evento.

  • Especificar um LinkButton controlo como botão predefinido. Apenas Button os controlos e ImageButton são suportados.

  • Alterar a DefaultButton propriedade programaticamente durante um postback assíncrono. Os postbacks assíncronos podem ser ativados numa página adicionando um ou mais UpdatePanel controlos à página. Para mais informações, consulte Visão Geral de Controlo do Painel de Atualização e Partial-Page Visão Geral de Renderização.

Aplica-se a

Ver também