【问题标题】:gridview SelectedIndexChanged Event is not firing.I am using asp.net 4.0 .By the way rowdatabound event is firing perfectlygridview SelectedIndexChanged 事件未触发。我正在使用 asp.net 4.0 。顺便说一下,rowdatabound 事件正在完美触发
【发布时间】:2023-03-11 09:01:01
【问题描述】:
 <asp:GridView ID="gridPlace" runat="server" AutoGenerateColumns="False" Width="800px"
        BackColor="White" BorderColor="#CCCCCC" BorderStyle="None" BorderWidth="1px"
        CellPadding="5" OnRowDataBound="gridPlace_RowDataBound" OnSelectedIndexChanged="gridPlace_SelectedIndexChanged">
        <Columns>
            <asp:BoundField HeaderText="DetailID" DataField="PID" />
            <asp:BoundField HeaderText="Name" DataField="Name" ControlStyle-Width="200px" />
            <asp:BoundField HeaderText="Description" DataField="Description" />
            <asp:TemplateField>
                <ItemTemplate>
                    <asp:ImageButton ID="btnEdit" runat="server" ImageUrl="~/Images/Edit.png" ToolTip="Click To Edit this Record" />
                </ItemTemplate>
                <ItemStyle Width="40px" HorizontalAlign="Center" />
            </asp:TemplateField>
        </Columns>
        <EmptyDataTemplate>
            <h2 class="CustomErrorMsg">
            No Record Found</h3>
        </EmptyDataTemplate>
    </asp:GridView>

这是我的 gridview 的 html 标记。RowDatabound 事件正在完美触发。请帮助

【问题讨论】:

  • 你需要一个选择列
  • 选择列是什么意思?
  • &lt;asp:CommandField ShowSelectButton="true" /&gt;
  • 哦...非常感谢。它只工作了一件事。我可以在 CommandField 中显示图像(如编辑或删除图像)吗?
  • 您可以使用 buttonType 属性 - msdn.microsoft.com/en-us/library/…

标签: asp.net


【解决方案1】:

您不能只单击一行上的任意位置来触发事件,您需要 JavaScript 来执行此操作。认为这些会有所帮助

  1. &lt;asp:GridView Runat="server" ID="GridView1" AutoGenerateSelectButton="true" /&gt; - How to: Enable Default Selection in the GridView Web Server Control

  2. 添加

    <asp:TemplateField> <ItemTemplate> <asp:LinkButton CommandName="Select" /> </ItemTemplate> </asp:TemplateField>

  3. 如果您不希望出现选择按钮,请使用 JavaScript - http://forums.asp.net/t/992062.aspx/1

  4. &lt;asp:CommandField ShowSelectButton="true" ButtonType="Image" /&gt; - http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.commandfield.aspx

【讨论】:

  • 这就是为什么我在模板列中添加了 asp:image 按钮。只需告诉我单击该图像按钮时会触发哪个事件?
  • 对于编辑,添加CommandName="Edit"到按钮,对于删除,我想CommandName="Delete"
  • 非常感谢。感谢您的帮助。
【解决方案2】:

我在使用 TemplateFields 时遇到过这些症状。

TemplateFields 允许您在具有相同 ID 的不同列中拥有项目 - 无需智能感知突出显示错误。

在这种情况下,具有相同 ID 的两个链接可能会阻止点击被解析。

通常这将是一个复制和粘贴错误。

希望这对某人有所帮助!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-09-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多