kev*_*aub 6 asp.net listview commandargument
我有一个ASP.Net页面,它向用户显示一个选项列表.当他们从列表中选择时,它会回发并查询sql server.结果显示在更新面板中选项下方的列表视图中.下面是ItemTemplate的片段:
<asp:LinkButton Text="Save IT" OnCommand="SaveIt" CommandArgument="<%# Container.DataItemIndex %>" runat="server" />
Run Code Online (Sandbox Code Playgroud)
DataItemIndex没有出现,所以我的commandargument是空的.但是,对象发件人是显示项目的按钮.
为什么索引项不出现在CommandArgument中?
可能是帖子回来了吗?如果是这样,为什么会回帖?有办法解决吗?
编辑:对不起,从我之前尝试解决它,我发布了错误的代码,但它仍然没有出现.
解决方案:我找到了另一种解决方法,即OnCommand的发送者是链接按钮,它具有CommandArgument.我将粉笔这个问题成为多个回发和javascript的问题.
您不能<%= %>在具有属性的标记上使用runat="server"属性内的语法.我很惊讶代码甚至会运行.:)
更新:
您可能希望在转发器上使用ItemDataBound事件,找到linkbutton并设置CommandArgument属性.
不是很优雅,但这是一个VB.NET示例.
Private Sub Repeater1_ItemDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.RepeaterItemEventArgs) Handles Repeater1.ItemDataBound
Select Case e.Item.ItemType
Case ListItemType.Item, ListItemType.AlternatingItem
Dim b As LinkButton = e.Item.FindControl("btn")
b.CommandArgument = e.Item.ItemIndex
b.DataBind()
End Select
End Sub
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11513 次 |
| 最近记录: |