Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/29.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 重写gridview类asp.net_C#_Asp.net_Gridview - Fatal编程技术网

C# 重写gridview类asp.net

C# 重写gridview类asp.net,c#,asp.net,gridview,C#,Asp.net,Gridview,这里是asp.net noob。我正在尝试覆盖/扩展Gridview以进行本主题中指定的分页: 代码隐藏: namespace MyCode { public partial class _Default : System.Web.UI.Page { .... } } namespace cly.Web.CustomControls { public class clyGridView : GridView {

这里是asp.net noob。我正在尝试覆盖/扩展Gridview以进行本主题中指定的分页:

代码隐藏:

namespace MyCode
{
    public partial class _Default : System.Web.UI.Page
    {
    ....
    }
}
namespace cly.Web.CustomControls
    {
         public class clyGridView : GridView
         {
          ...code
         }
    }
如何在.aspx文件中声明这个新的gridview?我已经试着用这个班做例子

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="MyCode._Default" %>
<%@ Import Namespace="cly.Web.CustomControls" %>    
...
<asp:clyGridView ID="MyResults" runat="server"> </asp:clyGridView>

您需要为自定义控件注册标记前缀


转到页面,并将标记前缀与自定义控件一起使用

<cly:clyGridView ID="MyResults" runat="server"> </cly:clyGridView>

如果您的目标只是提高分页效率,那么您应该只创建一个自定义数据源

这是一本教你怎么做的书

不需要创建自定义girdview


如果您正确地实现了数据源,gridview将完美地绑定到它,您将获得所需的高效分页。

我得到了错误:名称“MyResults”在当前上下文中不存在。我的codebehind没有看到新的clyGridView,因为您的示例代码中没有出现
结果
,因此这是一个不相关的新问题。老实说,我认为在ASP.NET中启动后创建自定义控件不是一个好主意。在90%的情况下,人们试图发明已有的功能。请检查您的Default.aspx.designer.cs-它必须包含
protectedglobal::cly.Web.CustomControls.clyGridView MyResults
<%@ Register tagprefix="cly" namespace="cly.Web.CustomControls" %>
<cly:clyGridView ID="MyResults" runat="server"> </cly:clyGridView>