CommandName与CommandArgument
適用場(chǎng)合:在利用數(shù)據(jù)綁定控件如:Repeater, linstview等時(shí),因?yàn)槊恳豁?xiàng)(ItemTemp;ate)只用一個(gè)ItemCommand事件,但是I有可能ItemTemplage的多個(gè)元素都可能激活這個(gè)事件,為了快速識(shí)別是誰(shuí)激活這個(gè)事件時(shí),就可以利用CommandName與CommandArgument了。
用法:在激活事件的元素屬性中,如LinkButton, Button等都可以指定CommandName與CommandArgument屬性,其中CommandName就是激活元素的名稱,在ItemCommand的事件處理程序中確定激活元素,CommandArgument是傳遞給ItemCommand的事件處理程序的參數(shù)。
示例:
在web頁(yè)面:
<asp:Repeater ID="Repeater1" runat="server" DataSourceID="ObjectDataSource1" OnItemCommand="Repeater1_ItemCommand">
??????????????????? <ItemTemplate>
??????????????????????? <div style="height: 25px; line-height: 25px; font-size: 13px; font-weight: bolder;
??????????????????????????? word-spacing: 2px;">
??????????????????????????? <asp:LinkButton ID="LinkButtonJob" runat="server" ForeColor="#0B99EA" Font-Size="14px"
??????????????????????????????? CommandName="JobDetail" CommandArgument='<%#Eval("JobID") %>'><%#Eval("JobName") %></asp:LinkButton></div>
??????????????????? </ItemTemplate>
</asp:Repeater>
在后臺(tái)代碼:
??? protected void Repeater1_ItemCommand(object source, RepeaterCommandEventArgs e)
??? {
??????? if (e.CommandName == "JobDetail")
??????? {
??????????? jid = e.CommandArgument.ToString();
??????????? ObjectDataSource2.SelectMethod = "GetJobByJid";
??????????? ObjectDataSource2.SelectParameters["jid"].DefaultValue = jid;
??????????? Repeater2.DataBind();
??????? }
??? }
總結(jié)
以上是生活随笔為你收集整理的CommandName与CommandArgument的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: TeamViewer在windows20
- 下一篇: error C2065: “SHELLE