DataListCommandEventArgs.CommandSource プロパティ
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
コマンドのソースを取得します。
public:
property System::Object ^ CommandSource { System::Object ^ get(); };
public object CommandSource { get; }
member this.CommandSource : obj
Public ReadOnly Property CommandSource As Object
プロパティ値
コマンドのソース。
例
次の例では、 プロパティを使用して、 CommandSource ユーザーが選択したコマンドを確認する方法を示します。 次に、 コマンドに基づいて適切なアクションを実行します。
<%@ 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>
注釈
イベントを CommandSource 発生させたコマンド ソースを特定するには、 プロパティを使用します。 このプロパティは、イベントを発生させるコマンドを決定するために一般的に使用されます。 その後、 コマンドに基づいて適切なアクションを実行できます。
適用対象
こちらもご覧ください
GitHub で Microsoft と共同作業する
このコンテンツのソースは GitHub にあります。そこで、issue や pull request を作成および確認することもできます。 詳細については、共同作成者ガイドを参照してください。
.NET