0

在可视化 Web 部件中,我使用的是转发器控件,并且项目是页面,同时单击该项目将导航到该页面中的另一个页面,我也放置了相同的 Web 部件。现在我的要求是在导航到应突出显示所选页面项的页面时。我实现了下面的代码,所以请建议添加什么。

提前致谢。

ascx代码:

<asp:Repeater ID="rptrPages" runat="server">
    <SeparatorTemplate>
        |
    </SeparatorTemplate>
    <ItemTemplate>
    <asp:LinkButton ID="lbtnUrl" PostBackUrl='<%# Eval("url")%>' Text='<%# Eval("Name")%>'
    runat="server" />
    </ItemTemplate>
</asp:Repeater>

ascx.cs 代码:

foreach (SPListItem page in Pages)
{
    DataRow dr;
    dr = dt.NewRow();
    dr["url"] = SPContext.Current.Web.Url + "/" + folder.Url + "/" + page.Name;
    string[] pagename = page.Title.ToString().Split('.');
    dr["Name"] = pagename[0];
    dt.Rows.Add(dr);
}
rptrPages.DataSource = dt;
rptrPages.DataBind();
4

1 回答 1

0
for (int i = 0; i < dt.Rows.Count; i++)
    {

    if (SPContext.Current.Item["Title"].ToString() == dt.Rows[i]["Name"].ToString())
        {
        LinkButton Link1 = (LinkButton)rptrPages.Items[i].FindControl("lbtnUrl");
        Link1.Attributes["OnClick"] = "return false";
        Link1.ForeColor = System.Drawing.Color.Red;
    }
    else
    {
        string url = dt.Rows[i]["url"].ToString();
        LinkButton Link1 = (LinkButton)rptrPages.Items[i].FindControl("lbtnUrl");
        Link1.PostBackUrl = url;
    }
}
于 2012-09-26T12:54:53.907 回答