0
嗨Stackoverflow社区! 我正在使用Visual Studio 2012和Windows Server 2012开发Sharepoint 2013服务器。所以,我必须构建一个Web部分,它应该通过文本框向GUI添加链接。此外,还应该添加另一个链接。添加新链接后,整个链接集应显示在列表中。现在的问题是:添加链接后,网站重新加载。因此,存储链接的数组只包含最新的链接。所有以前的链接都已经消失/删除。动态添加链接到sharepoint webpart
下面是关于这个我的方法:
protected void Page_Load(object sender, EventArgs e) {
if (Page.IsPostBack) {
Events = new List<String>();
}
}
protected void btnAddLink_click(object sender, EventArgs e) {
AddToList();
List<String> links = Events;
foreach (String s in links) {
HyperLink link = new HyperLink();
link.NavigateUrl = s;
link.Text = s;
lnkPanel.Controls.Add(link);
}
foreach (String l in links) {
tbDescription.Text += l + "\n";
}
}
public List<String> Events {
get { return (List<String>)ViewState["HyperLinkList"]; }
set { ViewState["HyperLinkList"] = value; }
}
public void AddToList() {
List<String> events = Events; // Get it out of the viewstate
String l = tbLinks.Text; // tb = textbox (user input)
HyperLink link = new HyperLink();
link.NavigateUrl = tbLinks.Text;
link.Text = tbLinks.Text;
if (!events.Contains(link.NavigateUrl.ToString())) {
events.Add(l);
}
Events = events; // Add the updated list back into the viewstate
}
我希望有人能帮助我与我(也许nooby)的问题。
这是脱离主题,但为什么你需要'((页)System.Web.HttpContext.Current.CurrentHandler).IsPostBack'不是'Page.IsPostback'存在?简单得多。 –
啊,是的,谢谢:) –