我正在尝试将自定义Web UserControl
添加到SharePoint应用程序。我已将UserControl
添加到SharePoint WebPart,现在我正在尝试在页面中加载该WebPart。
但是当我添加WebPart时,我遇到了以下异常:
The file /usercontrols/Test3Report.ascx does not exist.
但是我100%确定文件和文件夹都存在。我觉得用户控件的path
也不错。下面是我加载控件的方法:
protected string UserControlPath = @"~/usercontrols/";
protected string UserControlName = @"Test3Report.ascx";
private Test3Report mycontrol;
protected override void CreateChildControls()
{
try
{
mycontrol = (Test3Report)this.Page.LoadControl(UserControlPath + UserControlName);
Controls.Add(mycontrol);
}
catch (Exception CreateChildControls_Exception)
{
exceptions += "CreateChildControls_Exception: " + CreateChildControls_Exception.Message;
}
finally
{
base.CreateChildControls();
}
}
这对我来说似乎是正确的。我不知道为什么它抱怨我找不到Test3Report.ascx
。
我读到过一些关于信任级别没有设置为满的东西。可能是这样吗?或者其他的想法?
1条答案
按热度按时间tjrkku2a1#
尝试添加新的自定义控件,方法是在VS2010 -〉添加-〉新建项目的解决方案资源管理器中右键单击您的解决方案,从右侧列表中选择sharepoint 2010后,选择“用户控件”。这样,您的控件将自动创建,并在以后部署到Map的
"~/_ControlTemplates/PROJECTNAME/UserControlNAME.ascx"
文件夹中,以便以后引用。另外,打开解决方案资源管理器下“Package”文件夹中的.“package”文件,并检查用户控件是否列在“Items in Package”下,以确保用户控件包含在包中。
提示:* 如果您的用例允许,您可以将目标页置于设计模式,然后通过将.ascx文件从解决方案资源管理器拖放到页中来添加自定义控件,而不是在CreateChildControls()中以编程方式添加自定义控件。*