DataListCommandEventArgs.CommandSource 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á zdroj příkazu.
public:
property System::Object ^ CommandSource { System::Object ^ get(); };
public object CommandSource { get; }
member this.CommandSource : obj
Public ReadOnly Property CommandSource As Object
Hodnota vlastnosti
Zdroj příkazu.
Příklady
Následující příklad ukazuje použití CommandSource vlastnosti k určení příkazu vybraného uživatelem. Potom provede příslušnou akci na základě příkazu .
<%@ Page Language="C#" AutoEventWireup="True" %>
<%@ Import Namespace="System.Data" %>
<!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>
<title>DataListCommandEventArgs Example</title>
<script language="c#" runat="server">
ICollection CreateDataSource()
{
DataTable dt = new DataTable();
DataRow dr;
// Create a DataTable.
dt.Columns.Add(new DataColumn("IntegerValue", typeof(Int32)));
dt.Columns.Add(new DataColumn("StringValue", typeof(string)));
dt.Columns.Add(new DataColumn("DateTimeValue", typeof(DateTime)));
// Create sample data.
for (int i = 1; i <= 9; i++)
{
dr = dt.NewRow();
dr[0] = i;
dr[1] = "Item " + i.ToString();
dr[2] = DateTime.Now.ToShortTimeString();
dt.Rows.Add(dr);
}
// Return a DataView to the DataTable.
DataView dv = new DataView(dt);
return dv;
}
void Page_Load(Object sender, EventArgs e)
{
if (!IsPostBack)
BindList();
}
void BindList()
{
DataList1.DataSource = CreateDataSource();
DataList1.DataBind();
}
void DataList_ItemCommand(object sender, DataListCommandEventArgs e)
{
if (((LinkButton)e.CommandSource).CommandName == "select")
DataList1.SelectedIndex = e.Item.ItemIndex;
BindList();
}
</script>
</head>
<body>
<form id="form1" runat="server">
<h3>DataListCommandEventArgs Example</h3>
<asp:DataList id="DataList1"
GridLines="Both"
OnItemCommand="DataList_ItemCommand"
runat="server">
<HeaderTemplate>
Items
</HeaderTemplate>
<ItemTemplate>
<asp:LinkButton id="button1"
Text="Show details"
CommandName="select"
runat="server"/>
<%# DataBinder.Eval(Container.DataItem, "StringValue") %>
</ItemTemplate>
<SelectedItemTemplate>
Item:
<%# DataBinder.Eval(Container.DataItem, "StringValue") %>
<br />
Order Date:
<%# DataBinder.Eval(Container.DataItem, "DateTimeValue", "{0:d}") %>
<br />
Quantity:
<%# DataBinder.Eval(Container.DataItem, "IntegerValue", "{0:N1}") %>
<br />
</SelectedItemTemplate>
</asp:DataList>
</form>
</body>
</html>
<%@ Page Language="VB" AutoEventWireup="True" %>
<%@ Import Namespace="System.Data" %>
<!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>
<title>DataListCommandEventArgs Example</title>
<script language="VB" runat="server">
Function CreateDataSource() As ICollection
Dim dt As New DataTable()
Dim dr As DataRow
' Create a DataTable.
dt.Columns.Add(New DataColumn("IntegerValue", GetType(Int32)))
dt.Columns.Add(New DataColumn("StringValue", GetType(String)))
dt.Columns.Add(New DataColumn("DateTimeValue", GetType(DateTime)))
' Create sample data.
Dim i As Integer
For i = 1 To 9
dr = dt.NewRow()
dr(0) = i
dr(1) = "Item " & i.ToString()
dr(2) = DateTime.Now.ToShortTimeString()
dt.Rows.Add(dr)
Next i
' Return a DataView to the DataTable.
Dim dv As New DataView(dt)
Return dv
End Function 'CreateDataSource
Sub Page_Load(sender As Object, e As EventArgs)
If Not IsPostBack Then
BindList()
End If
End Sub 'Page_Load
Sub BindList()
DataList1.DataSource = CreateDataSource()
DataList1.DataBind()
End Sub 'BindList
Sub DataList_ItemCommand(sender As Object, e As DataListCommandEventArgs)
If CType(e.CommandSource, LinkButton).CommandName = "select" Then
DataList1.SelectedIndex = e.Item.ItemIndex
End If
BindList()
End Sub 'DataList_ItemCommand
</script>
</head>
<body>
<form id="form1" runat="server">
<h3>DataListCommandEventArgs Example</h3>
<asp:DataList id="DataList1"
GridLines="Both"
OnItemCommand="DataList_ItemCommand"
runat="server">
<HeaderTemplate>
Items
</HeaderTemplate>
<ItemTemplate>
<asp:LinkButton id="button1"
Text="Show details"
CommandName="select"
runat="server"/>
<%# DataBinder.Eval(Container.DataItem, "StringValue") %>
</ItemTemplate>
<SelectedItemTemplate>
Item:
<%# DataBinder.Eval(Container.DataItem, "StringValue") %>
<br />
Order Date:
<%# DataBinder.Eval(Container.DataItem, "DateTimeValue", "{0:d}") %>
<br />
Quantity:
<%# DataBinder.Eval(Container.DataItem, "IntegerValue", "{0:N1}") %>
<br />
</SelectedItemTemplate>
</asp:DataList>
</form>
</body>
</html>
Poznámky
CommandSource Pomocí vlastnosti určete zdroj příkazu, který událost vyvolal. Tato vlastnost se běžně používá k určení, který příkaz vyvolá událost. Na základě příkazu pak můžete provést příslušnou akci.