• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

ASP.NET用户控件的创建和使用

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

用户控件就是代码的重用性的体现。

一个用户控件就是一个简单的ASP.NET页面,不过他是包含在另一个ASP.NET页面的,用户控件文件有如下特点:

1.扩展名为:.ascx。

2.用户控件中没有“@ page”指令,而是包含“@ Control”指令,该指令对配置及其他的属性进行定义。

3.用户控件不能作为独立文件运行,而是必须像处理控件一样,将它们添加到Asp.net页中。

4.用户控件中没有html,body,或form元素,这些元素不许位于宿主中。

 

如下:

 

/>

 

创建一个搜索数据的用户控件:

1.添加一个Sample.ascx的文件

2.从工具箱中拖入1个Lable控件,设置ID为:ColumnName

3.从工具箱中拖入1个TextBox控件,设置其属性ID为:Condition,

4.从工具箱里拖入一个Button控件,并设置其属性ID为:Search,Text为搜索。

 

看“源”文件如下:

 

/>

 

5,打开Search.ascx.cn文件看后置代码,定义如下属性

 

; }    //错误信息

 

6.定义一个函数,SearchResult(),该函数将会根据用户输入的查询条件查询到数据并把数据集返回,该函数要利用到数据库访问知识,代码如下:

 

 dataTable;
        }

 

7.打开Search.ascx文件,双击Search按钮,则在Search.ascx.cs文件中生成按钮事件,这个事件中将绑定数据到GridView中。

 

1   protected void Search_Click(object sender, EventArgs e)
2         {
3             resultGridView.DataSource = SearchResult().DefaultView;
4             resultGridView.DataBind();
5         }
6 

 

 8.在Page_Load事件中加入初始化ColumnName标签代码,

 

 

       protected void Page_Load(object sender, EventArgs e)
        }

 

 

这样就创建好了一个搜索功能的用户控件,这个控件在哪个页面需要使用时,只需要加入到ASP.ENT页面就行了,像使用WEB控件一样。

 

用户控件的使用:

 

使用用户控件和使用web控件一样,拖入页面,然后设置他的属性就是了。

就拿刚才的搜索功能的用户控件来说,

 

1.在Default.aspx页面拖入用户控件

 

如下代码,我们在页面添加了一个ID为Sample1的用户控件和一个ID为:GridView1的GridView,并绑定数据。

 

 

 

 

 

设置页面加载事件

因为页面已经添加了控件,所以后台代码就可以设置控件的属性的值了,

Sample1.connectionString 设置连接字符串,

Sample1.columnCondition 设置按哪个字段查询

Sample1.tableName = "basic" 设置查询哪个表,

Sample1.resultGridView = this.GridView1。设置控件的GridView

 

        }

 

因为我们在控件的按钮事件中有如下代码,所以,当点击搜索,就会绑定数据到GridView

 protected void Search_Click(object sender, EventArgs e)
        {
            resultGridView.DataSource = SearchResult().DefaultView;
            resultGridView.DataBind();
        }

 

分析用户控件的创建和使用:

 

<%@ Register src="UC/Sample.ascx" tagname="Sample" tagprefix="uc1" %>

  <uc1:Sample ID="Sample1" runat="server" lableText="城市:"/>

···走了,下班了。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
asp.netcore3.1配置log4net发布时间:2022-07-10
下一篇:
asp.netcoremvc中json返回首字母大小写问题发布时间:2022-07-10
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap