【发布时间】:2010-12-03 09:26:43
【问题描述】:
我有两个这样的中继器:
Arrange By: Name | Age | Area
我现在要做的是用字母表从数据库中填充第二个中继器,如果点击了年龄,那么第二个中继器将从数据库中填充一些年龄范围!
我已经通过在第一个转发器中放置一个超链接来实现我的想法,它通过 - 使用它的 NavigateUrl 属性 - 同一页面的 url 但带有一些查询字符串值!
有人告诉我,查询字符串用于将值从一个页面传递到另一个页面,而不是同一页面......而且我想使用一些 AJAX(脚本管理器和更新面板),但事实证明我必须在我的转发器中使用一些服务器控件而不是 html 控件,以便它能够回发到服务器
我希望你能帮助我将值从 repeater1 传递到 repeater2,如果你认为我说错了,请纠正我!
提前致谢:)
编辑
我的.aspx.cs
protected void Page_Load(object sender, EventArgs e)
{
string commandString1 = "SELECT [arrange_by_id], [arrange_by] FROM [arrange_by]";
using (SqlConnection cn = new SqlConnection(ConfigurationManager.ConnectionStrings["testConnectionString"].ConnectionString))
{
using (SqlCommand cm = new SqlCommand(commandString1, cn))
{
cn.Open();
using (SqlDataReader dr = cm.ExecuteReader())
{
ArrangeBy_rpt.DataSource = dr;
ArrangeBy_rpt.DataBind();
}
}
}
}
void arrange_lnkbtn_command(object sender, CommandEventArgs e)
{
Label1.Text = (e.CommandArgument).ToString();
}
我的.aspx
<asp:Repeater ID="ArrangeBy_rpt" runat="server">
<ItemTemplate>
<asp:LinkButton id="arrange_lnkbtn" OnCommand="arrange_lnkbtn_command" CommandArgument='<%#Eval("arrange_by_id") %>' runat="server">
<%# Eval("arrange_by") %>
</asp:LinkButton>
</ItemTemplate>
<SeparatorTemplate> | </SeparatorTemplate>
</asp:Repeater>
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
编译错误
编译器错误消息:CS1061:“ASP.sortingcontrol_ascx”不包含“arrange_lnkbtn_command”的定义,并且找不到接受“ASP.sortingcontrol_ascx”类型的第一个参数的扩展方法“arrange_lnkbtn_command”(您是否缺少使用指令还是程序集引用?)
Line 4: <asp:Repeater ID="ArrangeBy_rpt" runat="server">
Line 5: <ItemTemplate>
Line 6: <asp:LinkButton id="arrange_lnkbtn" OnCommand="arrange_lnkbtn_command" CommandArgument='<%#Eval("arrange_by_id") %>' runat="server">
Line 7: <%# Eval("arrange_by") %>
Line 8: </asp:LinkButton>
【问题讨论】: