我正在尝试将 ASP.NET Ajax Toolkit 中的控件动态添加CalendarExtender
到WebForm页面。当我访问网页时,我已经在其中编写了要添加的控件 - 我遇到了一个错误:
MissingManifestResourceException
找不到适合指定区域性或中性区域性的任何资源。确保“AjaxControlToolkit.Properties.Resources.NET4.resources”在编译时正确嵌入或链接到程序集“AjaxControlToolkit”中,或者所有所需的附属程序集都是可加载的并且完全签名。
一段代码,错误发生在哪里:
// set User birthdate
Label labelUserBirthdate = new Label();
labelUserBirthdate.ID = "editableLabelSecondName";
labelUserBirthdate.Text = "Bithday: ";
TextBox editableBirthdate = new TextBox();
editableBirthdate.ID = "editableTextBoxBirthday";
editableBirthdate.CssClass = "round default-width-input";
CalendarExtender birthdateCalendar = new CalendarExtender();
birthdateCalendar.ID = "calendarExtender" + Guid.NewGuid().ToString();
birthdateCalendar.TargetControlID = "editableTextBoxBirthday";
this.contentViewWebdata.Controls.Add(labelUserBirthdate);
this.contentViewWebdata.Controls.Add(Page.ParseControl("<br />"));
this.contentViewWebdata.Controls.Add(editableBirthdate);
this.contentViewWebdata.Controls.Add(birthdateCalendar);
this.contentViewWebdata.Controls.Add(Page.ParseControl("<br />"));
完整代码(问题确实发生在SetSceneEditableUserInfo()
):
- ASPX 标记:http: //ideone.com/8deRFr
- 代码隐藏: http ://ideone.com/yOOyGK
我在网上搜索过这样的主题,其他人也做同样的事情:
- 只需在 AjaxControlToolkit 中包含命名空间
- 创建 CalendarExtender 的新实例
- 设置名称
- 设置目标 ID
如您所见,我正在做类似的事情。为什么它争论资源?我不明白:
- 包含正确的 DLL
- 命名空间也包含在 CodeBehind 中。
如何解决我的问题?