0

我有一个带有链接按钮的网格视图,当单击 ID 列中的值时,它会发布跨页。我希望将 ID 发布到下一页,以便在 url 中看不到它。(无查询字符串)gridview 包含在 contentplaceholder 中。我想知道如何响应。使用 findcontrol 在 details.aspx 上编写链接按钮 (lbID) 文本。请帮忙。(我使用的是 VB,我应该提到这一点。)

    <asp:Content ID="content" ContentPlaceHolderID="content" runat="server">

    <asp:GridView ID="gvOpen" runat="server" AutoGenerateColumns="False" 
    BackColor="White" BorderColor="Black" BorderStyle="None" BorderWidth="1px" 
    CellPadding="4" 
    ForeColor="Black" Width="96%" DataKeyNames="id" 
    DataSourceID="Open" CssClass="Grid" AllowPaging="True">
    <AlternatingRowStyle BackColor="#CCFFCC" />
    <Columns>
    <asp:ImageField DataImageUrlField="priority" HeaderText="Priority">
    <ItemStyle Height="28px" HorizontalAlign="Center" VerticalAlign="Middle" Width="28px" />                                            
        </asp:ImageField>
        <asp:TemplateField HeaderText="ID">
            <ItemTemplate>
                <asp:LinkButton ID="lbID" runat="server" PostBackUrl="~/details.aspx"> <%# Eval("ID") %></asp:LinkButton>
            </ItemTemplate>
4

1 回答 1

1

我认为这就是您想要的:PostBackUrl

void Page_Load(object sender, EventArgs e)
{
   LinkButton lbID = (LinkButton) PreviousPage.FindControl("lbID");
   string linkText = "";

   if(lbID != null)
     linkText = lbID.Text;
}

您可能希望像这样设置 linkBut​​ton 文本

<asp:LinkButton ID="lbID" runat="server" PostBackUrl="~/details.aspx" Text='<%# Eval("ID") %>'></asp:LinkButton>
于 2012-09-02T04:46:20.493 回答