ButtonField.CommandName Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Získá nebo nastaví řetězec, který představuje akci provést při kliknutí na tlačítko v objektu ButtonField .
public:
virtual property System::String ^ CommandName { System::String ^ get(); void set(System::String ^ value); };
public virtual string CommandName { get; set; }
member this.CommandName : string with get, set
Public Overridable Property CommandName As String
Hodnota vlastnosti
Název akce, která se má provést při kliknutí na tlačítko ButtonField .
Příklady
Následující příklad kódu ukazuje použití CommandName vlastnosti k určení názvu příkazu pro tlačítka v objektu ButtonFieldGridView ovládacího prvku.
<%@ 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 CustomersGridView_RowCommand(Object sender, GridViewCommandEventArgs e)
{
// If multiple ButtonField column fields are used, use the
// CommandName property to determine which button was clicked.
if(e.CommandName=="Select")
{
// Convert the row index stored in the CommandArgument
// property to an Integer.
int index = Convert.ToInt32(e.CommandArgument);
// Get the last name of the selected author from the appropriate
// cell in the GridView control.
GridViewRow selectedRow = CustomersGridView.Rows[index];
TableCell contactName = selectedRow.Cells[1];
string contact = contactName.Text;
// Display the selected author.
Message.Text = "You selected " + contact + ".";
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ButtonField Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>ButtonField Example</h3>
<asp:label id="Message"
forecolor="Red"
runat="server"
AssociatedControlID="CustomersGridView"/>
<!-- Populate the Columns collection declaratively. -->
<asp:gridview id="CustomersGridView"
datasourceid="CustomersSqlDataSource"
autogeneratecolumns="false"
onrowcommand="CustomersGridView_RowCommand"
runat="server">
<columns>
<asp:buttonfield buttontype="Button"
commandname="Select"
headertext="Select Customer"
text="Select"/>
<asp:boundfield datafield="CompanyName"
headertext="Company Name"/>
<asp:boundfield datafield="ContactName"
headertext="Contact Name"/>
</columns>
</asp:gridview>
<!-- This example uses Microsoft SQL Server and connects -->
<!-- to the Northwind sample database. -->
<asp:sqldatasource id="CustomersSqlDataSource"
selectcommand="Select [CustomerID], [CompanyName], [ContactName], [ContactTitle] From [Customers]"
connectionstring="<%$ ConnectionStrings:NorthWindConnection%>"
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">
<script runat="server">
Sub CustomersGridView_RowCommand(ByVal sender As Object, ByVal e As GridViewCommandEventArgs)
' If multiple ButtonField column fields are used, use the
' CommandName property to determine which button was clicked.
If e.CommandName = "Select" Then
' Convert the row index stored in the CommandArgument
' property to an Integer.
Dim index As Integer = Convert.ToInt32(e.CommandArgument)
' Get the last name of the selected author from the appropriate
' cell in the GridView control.
Dim selectedRow As GridViewRow = CustomersGridView.Rows(index)
Dim contactCell As TableCell = selectedRow.Cells(1)
Dim contact As String = contactCell.Text
' Display the selected author.
Message.Text = "You selected " & contact & "."
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ButtonField Example</title>
</head>
<body>
<form id="Form1" runat="server">
<h3>ButtonField Example</h3>
<asp:label id="Message"
forecolor="Red"
runat="server"
AssociatedControlID="CustomersGridView"/>
<!-- Populate the Columns collection declaratively. -->
<asp:gridview id="CustomersGridView"
datasourceid="CustomersSqlDataSource"
autogeneratecolumns="false"
onrowcommand="CustomersGridView_RowCommand"
runat="server">
<columns>
<asp:buttonfield buttontype="Button"
commandname="Select"
headertext="Select Customer"
text="Select"/>
<asp:boundfield datafield="CompanyName"
headertext="Company Name"/>
<asp:boundfield datafield="ContactName"
headertext="Contact Name"/>
</columns>
</asp:gridview>
<!-- This example uses Microsoft SQL Server and connects -->
<!-- to the Northwind sample database. -->
<asp:sqldatasource id="CustomersSqlDataSource"
selectcommand="Select [CustomerID], [CompanyName], [ContactName], [ContactTitle] From [Customers]"
connectionstring="<%$ ConnectionStrings:NorthWindConnection%>"
runat="server">
</asp:sqldatasource>
</form>
</body>
</html>
Poznámky
CommandName Pomocí vlastnosti přidružte název příkazu, například "Add" nebo "Remove", s tlačítky v objektuButtonField. Vlastnost můžete nastavit CommandName na libovolný řetězec, který identifikuje akci, která se má provést při kliknutí na příkazové tlačítko. Pak můžete programově určit název příkazu v obslužné rutině události a provést příslušné akce.
Poznámka:
Všechna tlačítka v objektu ButtonField sdílejí stejný název příkazu.
Ovládací prvky vázané na data rozpoznávají určité názvy příkazů a automaticky vyvolávají a zpracovávají příslušné události pro ovládací prvek. Rozpoznávají se následující názvy příkazů:
"Cancel""Delete""Edit""Insert""New""Page""Select""Sort""Update"
Chcete-li vyvolat stránkování, nastavte CommandName hodnotu "Page" a CommandArgument hodnotu obsaženého Button ovládacího prvku na "First", "Last", "Prev", "Next"nebo číslo stránky. Vzhledem k tomu, že CommandArgumentButtonField ovládací prvek je vždy celočíselnou index řádku, ButtonField není ovládací prvek vhodný pro vyvolání stránkování. Podobně, zatímco můžete vyvolat řazení nastavením CommandName na "Sort"hodnotu , CommandArgument vlastnost ButtonField ovládacího prvku je vždy celočíselnou index řádku. Z tohoto důvodu ButtonField není ovládací prvek vhodný pro vyvolání řazení. Pro vlastní názvy příkazů, například "Add" a "Remove", musíte napsat kód události, abyste zkontrolovali název příkazu a provedli nějakou vlastní akci. Další informace najdete na webu DataControlCommands.
Poznámka:
Ne všechny názvy příkazů jsou rozpoznány všemi ovládacími prvky vázanými na data. Ovládací prvek například "New" nerozpozná a "Select" ovládací prvek ho DetailsView nerozpoznáGridView.
Hodnota této vlastnosti je uložena ve stavu zobrazení.