- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
您好,我有一个 GridView ,每行都有一个文本框,我正在尝试获取 RowCommand 事件中的值。下面的代码适用于除第一行以外的所有行。第一行的 textbox.text 值始终为空。
<asp:GridView ID="GridView1" runat="server" OnRowCommand="GridView1_OnRowCommand" >
<Columns>
<asp:TemplateField>
<ItemTemplate>
Title <%# Eval("Title")%>
<asp:TextBox ID="TextBoxAddPost" runat="server"></asp:TextBox>
<asp:LinkButton ID="LinkButtonAddPost" CommandName="AddPost" CommandArgument='<%# Eval("postId") %>' runat="server">Add Post</asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
代码隐藏:
protected void Page_Load(object sender, EventArgs e)
{
if(IsPostBack)
bindGridView();
}
protected void GridView1_OnRowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "AddPost")
{
GridViewRow row = (GridViewRow)(((LinkButton)e.CommandSource).NamingContainer);
TextBox textBox = (TextBox)row.FindControl("TextBoxAddPost");
//Empty for first row but works for all others
Debug.WriteLine("row: " + row.RowIndex + ", textBox:" + textBox.Text.Trim());
GridView1.DataBind();
}
}
为了便于说明,以上代码已经过简化。每行实际上包含一个子 GridView ,因此为什么需要每行中的文本框。我担心 page_load 中的绑定(bind)会覆盖文本框的值,但是,如果没有 page_load 绑定(bind),则不会触发 rowCommand 事件。
我发现我有点奇怪,它对除第一行以外的所有行都适用。
最佳答案
要从文本框中获取数据,您必须先通过以下代码设置文本属性。
<asp:TextBox ID="TextBoxAddPost" runat="server" Text='<%# Eval("Title") %>'></asp:TextBox>
它肯定会从文本框中给出值。
无论哪种方式,您还可以设置 gridview 的 datakeynames 属性。 Click here for datakeynames
关于c# - ASP.NET GridView RowCommand 文本框为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7310878/
我正在尝试以编程方式在 ASP.NET 中添加一个按钮,以 C# 作为后端。我能够显示该按钮,但当用户单击该按钮时 RowCommand 没有被触发。 我认为问题在于我在用户单击“提交”按钮后创建按钮
这可能看起来像是重复的,但我不这么认为。我已经搜索过 stackoverflow,可能还不够。 这是我的挑战: ' Text="Delete" OnClientClick="return con
Gridview RowCommand 没有在服务器上触发,但是当我在本地系统上使用它时它可以工作。但是当我发布并发布到服务器时 RowCommand 没有被触发..你能给我一个解决方案吗...这是我
我已经找到了解决方案,我只是想发布它,以便对某些人有用 这是使用命令的按钮
我有一个显示产品版本的网格和一些链接按钮,如编辑、删除、预览等。单击编辑按钮后,我想获取产品 ID 和版本 ID,并重定向到某个 xyz.aspx 页面,可以在其中编辑产品详细信息。 这是我的网格的样
我有一个看起来像这样的 GridView: ... '
' runat="server" Text="View"> 代码隐藏: protected void t
当调用 rowcommand 时,我尝试跨多个命令参数发送: ' />
' runat="server" Text="View"> 代码隐藏: protected void t
我的 GridView 基本上显示数据库中数据的汇总版本。 我想做的是设置它,以便当您单击 GridView 中一行中的任意位置时,它应该执行一个设置过程,该过程将隐藏包含 GridView 的面板并
首先,我意识到其中的大部分也可以使用 ItemTemplates 来完成。如果我尝试做的事情根本不可能,我会考虑改用它们。 以下是我的困境的基本情况: 我在代码隐藏中加载的 ASPX 页面中有一个 G
来自德国的美好下午, 我在带有 RowCommand 事件的行上有一个 asp:GridView 和 ButtonFields。 protected void gridView_RowCommand(
我正在尝试将 TextBox 中的 Value 转换为 gridview 的 RowCommand 中的 int。 else if (e.CommandName == "UpdateRow") {
您好,我有一个 GridView ,每行都有一个文本框,我正在尝试获取 RowCommand 事件中的值。下面的代码适用于除第一行以外的所有行。第一行的 textbox.text 值始终为空。
我在 aspx 中使用 gridview,我有两个页面,注册和 details.aspx 一旦注册完成,它应该转到 details.aspx 中的详细信息页面。我在那个 GV 中保留了一个 gridv
我有一个 asp.net GridView: ' CommandName="ViewFactors" ImageUrl="~/tadarokat/Images/factor
我有一个 gridview,在这个 gridview 上有一个 linkbutton。 单击链接按钮时,rowCommand 触发,但是我想要求用户使用确认框确认单击, 如果是 -> rowComma
有谁知道如何从 ASP 中的 Gridview RowCommand 事件调用 Javascript 函数? 我需要调用函数来接收 rowindex 但我不知道如何从 rowcommand 调用 ja
我有一个带链接按钮的 GridView 。我使用 jquery 和 css 为链接按钮设置了一个灯箱。 链接按钮源代码 '
我正在使用 GridView绑定(bind)到 List .当RowCommand被某个按钮触发 我希望能够检索当前行的 Customer来自 e.CommandArgument 的对象,像这样: p
我是一名优秀的程序员,十分优秀!