2010-12-11 110 views
0

我要注册在另一个用户控件的用户控件,但我有这样的一些错误:在另一个用户控件与ASP.NET MVC注册的用户控件2

型 “NumbericTextBox”控制“4_txtCount”必须放在 在runat = server的窗体标签中。

描述:未处理的异常 的 当前web请求的执行过程中发生。请查看 堆栈跟踪以了解有关 错误的更多信息,以及它源自 的代码。

异常详细信息: System.Web.HttpException:控制 类型的 '4_txtCount' 'NumbericTextBox' 必须放在一个窗体标记内与 RUNAT =服务器

当我添加服务器端从我的UserControl标记,我从来没有得到错误消息。

请注意,我已经在我的视图中添加一个服务器端窗体标记...

如何注册并使用在另一个用户控件的用户控件没有用户控件添加服务器端表单标签?

感谢,阿夫欣

回答

2

“UserControl”我假设你指的是部分视图。您在部分视图中使用的控件之一是ASP.NET Web表单控件。您不能使用需要回发的控件。没有MVC视图应该要求表单runat =服务器标签。如果你想使用该控件不适合在MVC环境中,考虑创建使用Web窗体路由(System.Web.Routing)该页面具体路线:

http://msdn.microsoft.com/en-us/library/cc668202(v=vs.90).aspx

你可以修改RouteHandler构造函数以接受已填充必要数据的对象。 ViewData字典在此上下文中不可用。

1

不需要用户控件中form标签。

只要确保生成的用户控件所在的页面在用户控件周围有一个form标记。

form标签可以放在ASPX页面或ASPX页面的母版页上。

+0

正如我在我的问题所说,我已经添加了服务器端表单标记,但仍然收到错误消息... – 2010-12-11 10:25:07