我想在特征列选择上避免Gridview SelectindexChange方法。 [英] I Want to Avoid Gridview SelectindexChange Method on a Perticular Column Select.

查看:90
本文介绍了我想在特征列选择上避免Gridview SelectindexChange方法。的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

先生,我在中有一个Gridview ,我使用  Gridview_SelectIndexChanged方法。我的gridview中,我先   COlumn 一个图像按钮。我需要 我点击  图片按钮然后 SelectindexChanged 做那里工作。  如果我点击 其他列< span class =code-keyword>然后它的工作正常..我的代码是: -  











 <   asp:GridView     ID   =  GridView3    runat   =  server    DataKeyNames   =  ClassesID    CssClass   =  MGRID   

PagerStyle-CssClass = pgr AlternatingRowStyle-CssClass = alt AutoGenerateColumns = false

GridLines = 水平 OnRowDataBound = GridView3Bound 宽度 = 100% >
< >

< asp:TemplateField >
< ItemTemplate >
< asp:ImageButton ID = ImageButton2 runat = < span class =code-keyword> server 样式 = cursor:pointer ImageUrl = 〜/ images /plus.png\" CommandName = 选择 OnClick < span class =code-keyword> = / >
< / ItemTemplate >
< / asp:TemplateField >
< asp:TemplateField HeaderText = 宿舍 HeaderStyle-Width = 350px >
< HeaderTemplate >
< span 样式 = vertical-align:top > < / span >
< / HeaderTemplate >
< ItemTemplate >
< asp:标签 ID = lblhos runat = server 文字 =' <% #Bind( Code%> ' > < / asp:标签 >
< / ItemTemplate >
< / asp:TemplateField >
< asp:BoundField DataField = P HeaderText = 显示 SortExpression < span class =code-keyword> = noofroom
< span class =code-attribute>
HeaderStyle-Width = 350px HeaderStyle-Horizo​​ntalAlign = ItemStyle-Horizo​​ntalAlign = / >
< asp:BoundField DataField = a HeaderText < span class =code-keyword> =
A. bsent SortExpression = 完整

HeaderStyle-Width = 350px HeaderStyle-Horizo​​ntalAlign = ItemStyle-Horizo​​ntalAlign = / >
< asp:BoundField DataField = per HeaderText = SortExpression = 空缺

HeaderStyle-Width = 350px HeaderStyle-Horizo​​ntalAlign = ItemStyle-Horizo​​ntalAlign = / >

< asp:TemplateField ItemStyle-Horizo​​ntalAlign = HeaderStyle-Width = 50px ItemStyle-Width = 30px >
< ItemTemplate >
< asp:ImageButton ID = pri2 宽度 = 30px 高度 = 30px CommandName = 选择

< span class =code-attribute> CommandArgument =' <% #Eval( ClassesID%> ' CausesValidation = False ImageUrl = 〜/ Images / printer.png

runat = 服务器 / >
< / ItemTemplate >
< / asp: TemplateField >

< asp:TemplateField 可见 = false >
< ItemTemplate >
< asp:标签 ID = ClassesID runat = 服务器 可见 = false 文字 =' <% #Bind( ClassesID%> ' > < / asp:标签 >
< ; / ItemTemplate >
< / asp:TemplateField >

< /列 >

< / asp:GridView >







Vb代码: - < br $> b $ b

 受保护的  Sub  GridView3_SelectedIndexChanged( ByVal  sender 作为 对象 ByVal  e  As  System.EventArgs) Handles  GridView3.SelectedIndexChanged 



Dim i As Integer = GridView3.SelectedIndex

Dim DataKey As String = GridView3.DataKeys(GridView3.SelectedIndex) .Value
Session( ClassesID)= DataKey
结束 Sub

解决方案

您需要添加RowCommand事件并在事件内检查命令名称。例如,检查以下CP提示



按钮单击上的gridview rowcommand示例 [ ^ ]

行命令的MSDN文档 [ ^ ]

Sir, i have a Gridview in which i am using Gridview_SelectIndexChanged Method.In my gridview i have take in first COlumn an Imagebutton. i Need that when i click on Image button then SelectindexChanged not do there Work. and if i click on other Columns then its works fine.. My code is:-






<asp:GridView ID="GridView3" runat="server" DataKeyNames="ClassesID" CssClass="mGrid"

    PagerStyle-CssClass="pgr" AlternatingRowStyle-CssClass="alt" AutoGenerateColumns="false"

    GridLines="Horizontal" OnRowDataBound="GridView3Bound" Width="100%">
    <Columns>

        <asp:TemplateField>
            <ItemTemplate>
                <asp:ImageButton ID="ImageButton2" runat="server" Style="cursor: pointer"  ImageUrl="~/images/plus.png" CommandName="Select" OnClick="Plus"/>
        </ItemTemplate>
        </asp:TemplateField>
        <asp:TemplateField HeaderText="Hostel" HeaderStyle-Width="350px">
            <HeaderTemplate>
                <span style="vertical-align: top">Class </span>
            </HeaderTemplate>
            <ItemTemplate>
                <asp:Label ID="lblhos" runat="server" Text='<%# Bind("Code") %>'></asp:Label>
            </ItemTemplate>
        </asp:TemplateField>
        <asp:BoundField DataField="P" HeaderText="Present" SortExpression="noofroom"

            HeaderStyle-Width="350px" HeaderStyle-HorizontalAlign="Right" ItemStyle-HorizontalAlign="Right" />
        <asp:BoundField DataField="a" HeaderText="Absent" SortExpression="full"

            HeaderStyle-Width="350px" HeaderStyle-HorizontalAlign="Right" ItemStyle-HorizontalAlign="Right" />
        <asp:BoundField DataField="per" HeaderText="%" SortExpression="Vacant"

            HeaderStyle-Width="350px" HeaderStyle-HorizontalAlign="Right" ItemStyle-HorizontalAlign="Right" />

        <asp:TemplateField ItemStyle-HorizontalAlign="Right" HeaderStyle-Width="50px" ItemStyle-Width="30px">
            <ItemTemplate>
                <asp:ImageButton ID="pri2" Width="30px" Height="30px" CommandName="Select"

                    CommandArgument='<%# Eval("ClassesID") %>' CausesValidation="False" ImageUrl="~/Images/printer.png"

                    runat="server" />
            </ItemTemplate>
        </asp:TemplateField>

        <asp:TemplateField Visible="false">
            <ItemTemplate>
                <asp:Label ID="ClassesID" runat="server" Visible="false" Text='<%# Bind("ClassesID") %>'></asp:Label>
            </ItemTemplate>
        </asp:TemplateField>

    </Columns>

</asp:GridView>




Vb Code:-

Protected Sub GridView3_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles GridView3.SelectedIndexChanged
      

      
        Dim i As Integer = GridView3.SelectedIndex

        Dim DataKey As String = GridView3.DataKeys(GridView3.SelectedIndex).Value
        Session("ClassesID") = DataKey
    End Sub

解决方案

you need to add RowCommand event and inside the event check for the command name. for example check below CP Tip

Example of gridview rowcommand on Button Click [^]
and MSDN Documentation on Row Command[^]


这篇关于我想在特征列选择上避免Gridview SelectindexChange方法。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆