<tr>
<td colspan="2">
<br />
<asp:Panel ID="pnlFilter" runat="server" CssClass="TextLabel" OnClick="LetterChanged">
<asp:LinkButton ID="lnk0" runat="server" Text="[0-9]" ></asp:LinkButton>
<asp:LinkButton ID="lnkA" runat="server" Text="A" AutoPostBack="True"></asp:LinkButton>
<asp:LinkButton ID="lnkB" runat="server" Text="B" AutoPostBack="True"></asp:LinkButton>
<asp:LinkButton ID="lnkC" runat="server" Text="C" AutoPostBack="True"></asp:LinkButton>
<asp:LinkButton ID="lnkD" runat="server" Text="D" AutoPostBack="True"></asp:LinkButton>
<asp:LinkButton ID="lnkE" runat="server" Text="E" AutoPostBack="True"></asp:LinkButton>
<asp:LinkButton ID="lnkF" runat="server" Text="F" AutoPostBack="True"></asp:LinkButton>
<asp:LinkButton ID="lnkG" runat="server" Text="G" AutoPostBack="True"></asp:LinkButton>
<asp:LinkButton ID="lnkH" runat="server" Text="H" AutoPostBack="True"></asp:LinkButton>
<asp:LinkButton ID="lnkI" runat="server" Text="I" AutoPostBack="True"></asp:LinkButton>
<asp:LinkButton ID="lnkJ" runat="server" Text="J" AutoPostBack="True"></asp:LinkButton>
<asp:LinkButton ID="lnkK" runat="server" Text="K" AutoPostBack="True"></asp:LinkButton>
<asp:LinkButton ID="lnkL" runat="server" Text="L" AutoPostBack="True"></asp:LinkButton>
<asp:LinkButton ID="lnkM" runat="server" Text="M" AutoPostBack="True"></asp:LinkButton>
<asp:LinkButton ID="lnkN" runat="server" Text="N" AutoPostBack="True"></asp:LinkButton>
<asp:LinkButton ID="lnkO" runat="server" Text="O" AutoPostBack="True"></asp:LinkButton>
<asp:LinkButton ID="lnkP" runat="server" Text="P" AutoPostBack="True"></asp:LinkButton>
<asp:LinkButton ID="lnkQ" runat="server" Text="Q" AutoPostBack="True"></asp:LinkButton>
<asp:LinkButton ID="lnkR" runat="server" Text="R" AutoPostBack="True"></asp:LinkButton>
<asp:LinkButton ID="lnkS" runat="server" Text="S" AutoPostBack="True"></asp:LinkButton>
<asp:LinkButton ID="lnkT" runat="server" Text="T" AutoPostBack="True"></asp:LinkButton>
<asp:LinkButton ID="lnkU" runat="server" Text="U" AutoPostBack="True"></asp:LinkButton>
<asp:LinkButton ID="lnkV" runat="server" Text="V" AutoPostBack="True"></asp:LinkButton>
<asp:LinkButton ID="lnkW" runat="server" Text="W" AutoPostBack="True"></asp:LinkButton>
<asp:LinkButton ID="lnkX" runat="server" Text="X" AutoPostBack="True"></asp:LinkButton>
<asp:LinkButton ID="lnkY" runat="server" Text="Y" AutoPostBack="True"></asp:LinkButton>
<asp:LinkButton ID="lnkZ" runat="server" Text="Z" AutoPostBack="True"></asp:LinkButton>
<asp:LinkButton ID="lnkAll" runat="server" Text="ALL" AutoPostBack="True"></asp:LinkButton>
</asp:Panel>
<asp:UpdatePanel ID="updList" runat="server">
<ContentTemplate>
<asp:Panel ID="pnlProdList" runat="server" Height="300px" Width="800px" ScrollBars="both">
<asp:HiddenField ID="hdnLetter" runat="server" />
<asp:GridView ID="gvProd" runat="server" BackColor="#EEEEEE" GridLines="horizontal" AllowSorting="false" CssClass="TextLabel" Width="780px"
AutoGenerateColumns="false" DataKeyNames="key" EnableViewState="false" >
<SelectedRowStyle BackColor="LightYellow" Font-Bold="true" />
<HeaderStyle BackColor="LightSlateGray" ForeColor="White" />
<AlternatingRowStyle BackColor="#DDDDDD" Font-Bold="false" />
<RowStyle Font-Bold="false" />
<Columns>
<asp:CommandField SelectText="Details." ShowSelectButton="true" />
<asp:BoundField DataField="prodname" HeaderText="Name" SortExpression="prod" />
</Columns>
</asp:GridView>
</asp:Panel>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="lnkA" EventName="Click"></asp:AsyncPostBackTrigger>
<asp:AsyncPostBackTrigger ControlID="lnkB" EventName="Click"></asp:AsyncPostBackTrigger>
<!-- Will include a trigger for each letter I guess :( -->
</Triggers>
</asp:UpdatePanel>
</td>
</tr>
'PROBLEM - DON'T WANT TO HAVE TO MAKE 27 OF THESE FUNCTIONS, 1 FOR EACH LETTER/OPTION
Protected Sub lnkA_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles lnkA.Click
'SEt the hidden filter letter value based on the clicked letter & rebind datasource
If CType(sender, LinkButton).Text = "ALL" Then
hdnLetter.Value = "%"
Else
hdnLetter.Value = CType(sender, LinkButton).Text
End If
'This function below pulls filtered list data and rebinds the gridview
GetProdListData(sender, e)
End Sub
Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.
Have a better answer? Share it in a comment.
From novice to tech pro — start learning today.
See first line of attached code.
You can avoid that by adding lnkC.Click , lnkD.Click
Protected Sub lnkA_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles lnkA.Click, lnkB.Click , lnkC.Click , lnkD.Click
Try and tell.
Open in new window