ASP.net程序设计基础篇》里面说:
OnItemCommand 当在ItemTemplate 中所宣告的Button 或LinkButton 控件触发事件时,如果
该控件的CommandName 属性内容不是Edit、Cancel、Delete 或Update 时,便触发本事件。OnEditCommand当在ItemTemplate 中所宣告的Button 或LinkButton 控件触发事件时,如果
控件的CommandName 属性为Edit 时,则触发本事件。
为什么我按照它的做(稍微有点改动)缺出现问题呢?
代码如下:
<asp:DataList id="DataList1" runat="server">
<SelectedItemTemplate>
<%#container.dataitem("biaoti")%><br>
<%#container.dataitem("shijian")%>
<asp:Button CommandName="edit" Runat="server" Text="edit"></asp:Button>
</SelectedItemTemplate>
<ItemTemplate>
<%#container.dataitem("biaoti")%>
<asp:Button Runat="server" Text="info"></asp:Button>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox Text="sdfasfas"></asp:TextBox>
</EditItemTemplate>
</asp:DataList>
Private Sub DataList1_ItemCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataListCommandEventArgs) Handles DataList1.ItemCommand
DataList1.SelectedIndex = e.Item.ItemIndex
binddata() End Sub Private Sub DataList1_EditCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataListCommandEventArgs) Handles DataList1.EditCommand
DataList1.SelectedIndex = -1
DataList1.EditItemIndex = e.Item.ItemIndex
binddata()
End Sub程序执行结果:(在把datalist控件的enableviewstate属性改成false的情况下,为什么?)点击info按钮能进入<SelectedItemTemplate>,但是再点击edit按钮却没有反应,不能进入<EditItemTemplate>,为什么?
把itemcommand事件改成下面的也不行。
Private Sub DataList1_ItemCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataListCommandEventArgs) Handles DataList1.ItemCommand
DataList1.SelectedIndex = e.Item.ItemIndex
binddata()
If e.CommandSource.commandname = "edit" Then
DataList1.EditItemIndex = e.Item.ItemIndex
binddata()
End If End Sub
OnItemCommand 当在ItemTemplate 中所宣告的Button 或LinkButton 控件触发事件时,如果
该控件的CommandName 属性内容不是Edit、Cancel、Delete 或Update 时,便触发本事件。OnEditCommand当在ItemTemplate 中所宣告的Button 或LinkButton 控件触发事件时,如果
控件的CommandName 属性为Edit 时,则触发本事件。
为什么我按照它的做(稍微有点改动)缺出现问题呢?
代码如下:
<asp:DataList id="DataList1" runat="server">
<SelectedItemTemplate>
<%#container.dataitem("biaoti")%><br>
<%#container.dataitem("shijian")%>
<asp:Button CommandName="edit" Runat="server" Text="edit"></asp:Button>
</SelectedItemTemplate>
<ItemTemplate>
<%#container.dataitem("biaoti")%>
<asp:Button Runat="server" Text="info"></asp:Button>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox Text="sdfasfas"></asp:TextBox>
</EditItemTemplate>
</asp:DataList>
Private Sub DataList1_ItemCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataListCommandEventArgs) Handles DataList1.ItemCommand
DataList1.SelectedIndex = e.Item.ItemIndex
binddata() End Sub Private Sub DataList1_EditCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataListCommandEventArgs) Handles DataList1.EditCommand
DataList1.SelectedIndex = -1
DataList1.EditItemIndex = e.Item.ItemIndex
binddata()
End Sub程序执行结果:(在把datalist控件的enableviewstate属性改成false的情况下,为什么?)点击info按钮能进入<SelectedItemTemplate>,但是再点击edit按钮却没有反应,不能进入<EditItemTemplate>,为什么?
把itemcommand事件改成下面的也不行。
Private Sub DataList1_ItemCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataListCommandEventArgs) Handles DataList1.ItemCommand
DataList1.SelectedIndex = e.Item.ItemIndex
binddata()
If e.CommandSource.commandname = "edit" Then
DataList1.EditItemIndex = e.Item.ItemIndex
binddata()
End If End Sub
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货