我在设置为 runat 服务器的 aspx 页面中有一个 div。
<div class="article-container" runat="server" id="divArticleContainer"></div>
现在这个 div 将通过静态方法添加一个用户控件:
public static void LoadCurrentArticle(int index)
{
divArticleContainer.Controls.Clear();
Page pg = new Page();
string path = @"/Frontend/Controls/Article/ArticleItem.ascx";
ArticleItem control = (ArticleItem)pg.LoadControl(path);
control.Functionality.article = Functionality.articles.ElementAt(index);
divArticleContainer.Controls.Add(control);
}
基本上是为了给你一个简要的概述,我的程序正在加载一个新闻文章列表。在触摸手势(向左或向右滑动)上,对 Web 方法 GetNext() 和 GetPrevious() 的 ajax 调用将移动到列表中的下一项或上一项。
[WebMethod]
public static void GetNext(int index)
{
int idx = index;
idx++;
if (idx < Functionality.articles.Count())
{
LoadCurrentArticle(idx);
Functionality.index = idx;
}
else
{
idx = 0;
LoadCurrentArticle(idx);
Functionality.index = idx;
}
}
[WebMethod]
public static void GetPrevious(int index)
{
int idx = index;
idx--;
if (idx >= 0)
{
LoadCurrentArticle(idx);
Functionality.index = idx;
}
else
{
idx = Functionality.articles.Count() - 1;
LoadCurrentArticle(idx);
Functionality.index = idx;
}
}
我的主要问题是“divArticleWrapper”返回一个空引用异常。有解决这个问题的方法吗?