这里不允许,因为它没有扩展类'System.Web.UI.UserControl'

时间:2013-05-23 18:07:44

标签: c# user-controls devexpress

我创建了一个扩展DEVExpress ASPxGridView的用户控件。我的目标是让这个控件成为一个模板(样式设置,共享属性),我会在GridView的某个地方,但不必添加属性和样式,我可以将它用作模板。所有其他属性,事件等都将从基类继承

这是我的ascx.cs代码

namespace CORE.Web.UserControls
{
   public partial class ucGridView : DevExpress.Web.ASPxGridView.ASPxGridView
      {
      }
}

和ascx代码

<dx:ASPxGridView ID="gcGridView" runat="server" AutoGenerateColumns="False" Styles-AlternatingRow-Enabled="True">
<Settings HorizontalScrollBarMode="auto" VerticalScrollBarMode="auto" VerticalScrollableHeight="500" />
<SettingsPager PageSize="20">
    <PageSizeItemSettings Visible="true" ShowAllItem="true" />
</SettingsPager>
<SettingsBehavior AllowFocusedRow="true" />
<Styles>
    <Header VerticalAlign="Top" Wrap="True"></Header>
    <AlternatingRow Enabled="True"></AlternatingRow>
</Styles>

以及它放在aspx页面中的位置

<uc1:ucGridView runat="server" ID="ucGridView" DataSourceID="masterStatsObjectDataSource" />

还有其他一些问题,例如专栏以及我将要处理的任何问题,但是我遇到了一个障碍,只是让它在运行时工作

我收到此错误消息

此处不允许使用'CORE.Web.UserControls.ucGridView',因为它不会扩展类'System.Web.UI.UserControl'。

aspx页面的第1行是

&lt;%@ Control Language =“C#”AutoEventWireup =“true”CodeBehind =“ucGridView.ascx.cs”Inherits =“CORE.Web.UserControls.ucGridView”%&gt;

我不知道从哪里开始,因为这应该很容易。任何帮助将不胜感激。

由于

2 个答案:

答案 0 :(得分:2)

答案 1 :(得分:0)

不是最佳解决方案,但我决定创建一个继承了所有属性和事件的服务器控件。从那里直接前进