2017-06-20 67 views
0

使用Web服务,我有一个web部件(用户控制),Kentico中,我需要加载的内容,同时向下滚动页面预览树节点的内容。 对于这一点,我已经写了AJAX代码,并试着写在代码中的WebMethod背后本身相同的用户控制和使用父ASPX页面URL调用它,但网址是动态的,与节点名称,即在树中选择的变化。我试过window.location.href也没有成功。加载内容(的WebPart在Kentico),而向下滚动,在ASP.Net AJAX和

然后我创建了一个Web服务,并写道,其中的WebMethod得到的滚动打服务中,我也得到同样的内容,但现在我不能够将内容以现有的内容追加。实际上,我想用某种页面索引或某种方式使用现有代码(现在我使用了代码中的特定数字)来加载页面加载时可能有3行,滚动时总是有3行。代码段提供如下:

foreach (DataRow row in dtSortedDocRows.AsEnumerable()){ 

        int rowNumber = int.Parse(row["RowNumber"].ToString()); 

        if (rowNumber >= 0 && rowNumber <= 2) 
        { 
         TreeNode document = TreeNode.New(row); 

         EditableDocumentPreview edp = (EditableDocumentPreview)Page.LoadControl("~/EditableDocumentPreview.ascx"); 
         edp.Document = document; 
         // plcContainer manages child controls' viewstate by ID, so set them to be node-specific. 
         // (Not document-specific -- due to linked documents, one document might be associated with multiple edps.) 
         edp.ID = "edp_" + document.NodeID; 
         plcContainer.Controls.Add(edp); 

         ChildCount++; 
        } 
} 

请让我知道,如果是必要的,在此先感谢您的帮助的任何其他信息!

+0

目前还不清楚问题所在。为什么你无法“追加内容”?你一路上有什么错误吗? – rocky

+0

实际上,一个用户控件(上面代码片段中的** EditableDocumentPreview **)在另一个用户控件(这个用作web部件)内被调用,所以我从Web服务获取所需的内容,我想要像上面的代码那样使用循环来追加它。 否则请给我建议任何其他方式来执行此操作,例如绑定** EditableDocumentPreview **用户控件以成功调用ajax。 –

回答

0

有一个webpart on the Kentico DevNet Marketplace它已经这样做了,它被称为“无限滚动/延迟加载中继器”。如果它不完全符合您的需求,请从其中的代码获取灵感来创建自己的代码。我并不是说这样可以解决你的问题,但它可以让你在不需要编写任何代码的情况下更加靠近。

相关问题