动态创建 A-Z 英文字符的超链接





0/5 (0投票)
这是动态构建 A-Z 字符链接的方法,类似于这样:A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P
这是动态构建 A-Z 字符链接的方法,类似于这样:
A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z
您可能需要过滤 GridView 的结果,例如显示名字以特定字符开头的用户列表。
我们可以使用 Repeater Control 动态生成字符链接,如下所示
ASPX
<asp:Repeater ID="Repeater1" runat="server"> <ItemTemplate> <asp:HyperLink ID="hyp1" runat="server" NavigateUrl='<%# eval("Name","~/Target.aspx?Key={0}") %>' Text='<%# eval("Name") %>'></asp:HyperLink> </ItemTemplate> <SeparatorTemplate>|</SeparatorTemplate> </asp:Repeater>
以及页面代码
VB
Private Sub BindRepeater() Dim dt As New Data.DataTable dt.Columns.Add("Name") Dim c As Char = "A" Do While Asc(c) <= Asc("Z") dt.Rows.Add(c.ToString()) c = Chr(Asc(c) + 1) Loop Me.Repeater1.DataSource = dt Me.Repeater1.DataBind() End Sub Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load BindRepeater() End Sub
C#
private void BindRepeater() { Data.DataTable dt = new Data.DataTable(); dt.Columns.Add("Name"); char c = "A"; while (Strings.Asc(c) <= Strings.Asc("Z")) { dt.Rows.Add(c.ToString()); c = Strings.Chr(Strings.Asc(c) + 1); } this.Repeater1.DataSource = dt; this.Repeater1.DataBind(); } protected void Page_Load(object sender, System.EventArgs e) { BindRepeater(); }
参见