This is a migrated thread and some comments may be shown as answers.

[Solved] Radgrid Linkbutton registers click when hidden

1 Answer 110 Views
Grid
This is a migrated thread and some comments may be shown as answers.
Kevin
Top achievements
Rank 1
Kevin asked on 08 Sep 2011, 02:47 PM
I have linkbuttons in a radgid template column at the end of my grid.  Whn I hide one it will still register the click when I click on the one that is not hidden, so what happens is that 2 pop-ups show up, the one hidden first and then the one that is not hidden.  How can I disalbe the hidden one so that it does not fire the event.

<telerik:RadGrid ID="myGridPositions" runat="server" BorderWidth="1px" CellPadding="6" GridLines="None" BorderColor="#404040" Skin="Web20">
                                                   <MasterTableView Name="myRGDDMain" AutoGenerateColumns="false" DataKeyNames="intPositionId, intSpecialFill" Font-Names="Veranda,arial,sans-serif" HeaderStyle-HorizontalAlign="Center" 
                                                   BorderWidth="1px" Width="100%" ItemStyle-HorizontalAlign="Center">
                                                    <HeaderStyle Font-Bold="true" />
                                                    <AlternatingItemStyle BackColor="#B0C4DE" />
                                                            <Columns>
                                                                <telerik:GridTemplateColumn HeaderText="TITLE" ItemStyle-HorizontalAlign="Left">
                                                                    <ItemTemplate>
                                                                        <asp:LinkButton ID="lnkPassback" runat="server" CommandArgument='<%# bind("intPositionId") %>' CommandName="Passback" text='<%# bind("strPosnTitle") %>'
                                                                         ToolTip="Click to passback position to higher level"></asp:LinkButton>
                                                                    </ItemTemplate>
                                                                </telerik:GridTemplateColumn>
                                                                <telerik:GridBoundColumn DataField="strpara" HeaderText="PARA" ItemStyle-HorizontalAlign="Center" />
                                                                <telerik:GridBoundColumn DataField="strLine" HeaderText="LINE"  ItemStyle-HorizontalAlign="Center" />
                                                                <telerik:GridBoundColumn DataField="intPositionNum" HeaderText="POS"  ItemStyle-HorizontalAlign="Center" />
                                                                <telerik:GridBoundColumn DataField="strGrade" HeaderText="GR"  ItemStyle-HorizontalAlign="Center" />
                                                                <telerik:GridBoundColumn DataField="strMos" HeaderText="MOS"  ItemStyle-HorizontalAlign="Center" />
                                                                <telerik:GridBoundColumn DataField="strFullName" HeaderText="Filled By" ItemStyle-HorizontalAlign="Left" />
                                                                <telerik:GridtemplateColumn HeaderText="LT_MOB" ItemStyle-HorizontalAlign="Center" UniqueName="Latemob">
                                                                    <ItemTemplate>
                                                                        <asp:LinkButton ID="lnkLateMob" runat="server" CommandArgument='<%# bind("intPositionId") %>' CommandName="LateMob">LT_MOB</asp:LinkButton>
                                                                    </ItemTemplate>
                                                                </telerik:GridtemplateColumn>
                                                                <telerik:GridTemplateColumn HeaderText="Remove" ItemStyle-HorizontalAlign="Center" UniqueName="Remove">
                                                                    <ItemTemplate>
                                                                        <asp:LinkButton ID="lnkDelete" runat="server" CommandArgument='<%# bind("intPositionId") %>' CommandName="Remove" OnClientClick="Are you sure">Remove</asp:LinkButton>
                                                                    </ItemTemplate>
                                                                </telerik:GridTemplateColumn>
                                                                 <telerik:GridTemplateColumn HeaderText="Refrad" ItemStyle-HorizontalAlign="Center" UniqueName="Refrad">
                                                                    <ItemTemplate>
                                                                        <asp:LinkButton ID="lnkRefrad" runat="server" CommandArgument='<%# bind("intPositionId") %>' CommandName="Refrad">Refrad</asp:LinkButton>
                                                                    </ItemTemplate>
                                                                </telerik:GridTemplateColumn>
                                                                 <telerik:GridBoundColumn DataField="intSpecialFill" UniqueName="Passback" />
                                                            </Columns>



Protected Sub myGridPositions_ItemDataBound(ByVal sender As Object, ByVal e As Telerik.Web.UI.GridItemEventArgs) Handles myGridPositions.ItemDataBound
        Dim Today As DateTime = Date.Now
        Dim deploy As DateTime
        sql = "Select dtDeploy from tblMobUnits where intUnitMobId = " & ddlUic.SelectedValue
        myDataTable = New DataTable
        myDataTable = getData(sql)
        If IsDBNull(myDataTable.Rows(0)(0)) Then
            deploy = Date.Now.AddDays(10)
        Else
            deploy = myDataTable.Rows(0)(0)
        End If
        If Today > deploy Then
            If checkAdmin() = False Then
                myGridPositions.MasterTableView.GetColumn("Latemob").Visible = False
                myGridPositions.MasterTableView.GetColumn("Remove").Visible = False
                tblDeploy.Visible = True
            Else
                myGridPositions.MasterTableView.GetColumn("Latemob").Display = True
                myGridPositions.MasterTableView.GetColumn("Remove").Display = True
                tblDeploy.Visible = True
            End If
        Else
            myGridPositions.MasterTableView.GetColumn("Refrad").Visible = False
        End If
        If TypeOf e.Item Is GridDataItem Then
            Dim Item As GridDataItem = DirectCast(e.Item, GridDataItem)
            Dim name As TableCell = Item("strFullName")
            Dim Fill As TableCell = Item("Passback")
            If name.Text = "&nbsp;" Then
                Dim Late As LinkButton = DirectCast(Item.FindControl("lnkLateMob"), LinkButton)
                Late.Visible = False
                Dim Remove As LinkButton = DirectCast(Item.FindControl("lnkDelete"), LinkButton)
                Remove.Visible = False
                Dim Refrad As LinkButton = DirectCast(Item.FindControl("lnkRefrad"), LinkButton)
                Refrad.Visible = False
            End If
            If name.Text <> "&nbsp;" Then
                Dim Pass As LinkButton = DirectCast(Item.FindControl("lnkPassback"), LinkButton)
                Pass.Enabled = False
                Pass.ToolTip = ""
                Pass.ForeColor = Drawing.Color.Black
            End If
            If Fill.Text = "1" Then
                Dim Pass As LinkButton = DirectCast(Item.FindControl("lnkPassback"), LinkButton)
                Pass.Enabled = False
                Pass.ToolTip = "Position Passed Back to State Level"
                Pass.ForeColor = Drawing.Color.Firebrick
            End If
            'Hide the fill column no matter the fill
            myGridPositions.MasterTableView.GetColumn("Passback").Display = False
        End If
    End Sub

1 Answer, 1 is accepted

Sort by
0
Mira
Telerik team
answered on 13 Sep 2011, 03:41 PM
Hello Kevin,

I tried to replicate the issue which you described, but to no avail. Attached to this message, you will find the code which I used for testing.

Please, take a look at it and let me know if there are any differences at your end, which I may be leaving out.

Kind regards,
Mira
the Telerik team

Check out Telerik Trainer, the state of the art learning tool for Telerik products.
Tags
Grid
Asked by
Kevin
Top achievements
Rank 1
Answers by
Mira
Telerik team
Share this question
or