如何实现一个继承自asp.net webcontrol的新控件?

时间:2016-06-14 12:17:10

标签: asp.net inheritance visual-studio-2008-sp1

我遇到问题,CheckBoxList在回发时丢失了它的属性,如下所述:ListItems attributes in a DropDownList are lost on postback?

我创建了NewCheckBoxList控件,继承自内置的CheckBoxList控件,但似乎无法弄清楚该类的放置位置或如何让aspx页面识别它。

我已将该课程放入我的网络项目中,并且我也尝试将其放入我们使用的类库中......似乎都无法正常工作。

我在页面上添加了<%@ Register标记,但我不断收到此编译错误:

"在Imports' NewControls'中指定的命名空间或类型不包含任何公共成员或无法找到。确保定义了命名空间或类型,并且至少包含一个公共成员。确保导入的元素不使用任何别名。"

我只覆盖了LoadViewState和SaveViewState ......所以我不确定它对公众成员的要求。我假设我把课程安排在错误的地方,或者以某种方式注册了它。

引用的帖子说要把类放在App_Code文件夹中,但我的web项目没有App_Code文件夹。我正在使用VS2008。

所以我的问题是......你如何从WebControl实际实现派生类?

提前致谢。 乔治

1 个答案:

答案 0 :(得分:0)

我明白了。

我必须为服务器控件创建新项目,将其添加到我的Web解决方案中,为新控件项目添加对我的主Web项目的引用,将控件添加到我的工具栏,然后当我将它拖到我的aspx上时页面创建了正确的Register指令。

无论如何,谢谢。

乔治