<asp:ScriptManager ID="smForm" runat="server">
</asp:ScriptManager>
<asp:UpdatePanel ID="upForm" runat="server">
<ContentTemplate>
<asp:DropDownList ID="ddlFilter" runat="server" AutoPostBack="True"
onselectedindexchanged="ddlFilter_SelectedIndexChanged" Width="150px">
<asp:ListItem Value="1">A-G</asp:ListItem>
<asp:ListItem Value="2">H-K</asp:ListItem>
<asp:ListItem Value="3">L-N</asp:ListItem>
<asp:ListItem Value="4">O-Q</asp:ListItem>
<asp:ListItem Value="5">R-T</asp:ListItem>
<asp:ListItem >U-Z</asp:ListItem>
</asp:DropDownList>
<asp:ListBox ID="lbLetter" Rows="10" Width="150px" runat="server"></asp:ListBox>
</ContentTemplate>
</asp:UpdatePanel>
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
BindListData('A','G');
}
private void BindListData(char lower, char upper)
{
if (lower < 'A' || upper > 'Z')
{ return; }
lbLetter.Items.Clear();
for (int i = 0; i < (int)(upper - lower) + 1; i++)
{
char ch = (char)(lower+i);
lbLetter.Items.Add(new ListItem(ch.ToString(),ch.ToString()));
}
}
protected void ddlFilter_SelectedIndexChanged(object sender, EventArgs e)
{
char lower = char.Parse(ddlFilter.SelectedItem.Text.Substring(0,1));
char upper = char.Parse(ddlFilter.SelectedItem.Text.Substring(2,1));
BindListData(lower,upper);
}