Label>/>//放置别的空间像一个容器占一个空间来容纳想容纳的控件
PlaceHolder>
Calendar1_DayRender事件Rende:
着色
在Calendar初始化创建每一个日期的单元格时候都会调用该函数
Multiview控件
不要忘了在MulView控件当中设置ActiveViewIndex=”0”
导航控件可以MSDN:
站点关键词
导航控件包括SiteMapPath、TreeView、Menu三个控件,这三个控件都可以在页面中轻松建立导航这个例子的站点文件在就是系统默认的站点文件:
整个项目的根目录中的Web.sitemap文件
实现过程
1:
新建一个主页Defalut.aspx
2:
在主页拖入SiteMapPath、TreeView、Menu三个控件(TreeView、Menu选其中一个也可以),然后为需要的TreeView、Menu添加数据源
(添加数据源时候,保持默认的图片所示的siteMapDataSource1)
3:
分页新建两个子页面webForm2,webForm3并且往这个两个页面拖入站点地图控件SiteMapPath
4:
在您的整个项目的根目录下新建一个站点地图(这个站点地图的文件名不要更改,就维持Web.sitemap这个文件名)
5:
在Web.sitemap这个文件中添加所指定的url例子如下(title一定要填写)
6:
右键在浏览器中查看Defalut.aspx即可
总结:
1:
SiteMapPath默认的站点路径是工程目录下的Web.sitemap
不需要SiteMapPath设置它的站点文件路径,默认就是站点路径是工程目录下的Web.sitemap
2:
哪个页面有SiteMapPath控件,那么该页面就有导航菜单
HiddenField控件
HiddenField控件就是隐藏输入框控件,用来保存那些不需要显示在页面上的对安全性要求不高的数据。
隐藏输入框控件作为元素呈现在HTML页面。
由于HiddenField隐藏输入框控件的值会呈现在客户端浏览器,所以对于安全性较高的数据,并不推荐将它保存在隐藏输入框控件中。
隐藏输入框控件的值通过Value属性保存,同时也可以通过代码来控制Value的值
Lieral控件
通常情况下Lieral控件无需添加任何HTML元素即可将静态文本呈现在网页上。
与Label不同的是,Label控件在生成HTML代码时,会呈现元素。
而Lieral控件不会向文本中添加任何HTML代码。
如果开发人员希望文本和控件直接呈现在页面中而不使用任何附加标记时,推荐使用Lieral控件。
动态缓存更新控件(Substitution)
通常情况下,对ASP.NET整个页面的缓存是没有任何意义的,这样经常会给用户带来疑惑。
Substitution动态缓存更新控件允许用户在页上创建一些区域,这些区域可以用动态的方式进行更新,然后集成到缓存页。
要使用Substitution控件,则必须符合以下标准:
❑此方法被定义为静态方法。
❑此方法接受HttpContext类型的参数。
❑此方法返回String类型的值。
在ASP.NET页面中,为了减少用户与页面的交互中数据库的更新,可以对ASP.NET页面进行缓存,缓存代码可以使用页面参数的@OutputCatch,示例代码如下所示。
<%@Page
Language="C#"AutoEventWireup="true"CodeBehind="Substitution.aspx.cs"Inherits="_5_17.Substitution"%>
<%@OutputCacheDuration="100"VaryByParam="none"%>//增加一个页面缓存
利用MethodName调用静态方法
protectedstaticstringGetTimeNow(HttpContextcon)//注意事件的格式
{
returnDateTime.Now.ToString();//Substitution控件执行的方法
}
ObjectDataSource控件
这个不懂
目前就会
1:
建一个类库写点关于增删改查的函数,
publicclassClass1//创建类库
{
publicstringGetTitle()//创建方法
{
name="title";//变量赋值
returnname;//返回name
}
publicvoidInsertTitle()//创建方法
{
name="insert";//变量赋值
}
publicDataTableGetDataTable()!
!
!
绑定方法的时候选这个
{
SqlOperates=newSqlOperate();
returns.SelectDataBase(@"select*fromTableTest1",@"DataSource=VIRGIL-PC\SQL2008;InitialCatalog=模¡ê块¨¦开a发¤¡é测a试º?
用®?
例¤y;IntegratedSecurity=True");
}
publicstringname;//创建共有变量name
}
就像ObjectDataSourceClassLibrary中的Class1当中的内容
2:
将ObjectDataSourceClassLibrary中的动态链接库导入到MyTestWebApplication的Bin文件夹下
3:
然后配置数据源
然后将ObjectDataSource绑定到DataGridView当中,运行就出现数据了
XMLDataSource
1:
写一个数据源XML文件
2:
将XMLDataSource的数据源配置该XML文件
3:
拖拽一个treeView控件并且选择数据源为XMLDataSource
4:
设置treeView控件的绑定的数据列TextField锁绑定的内容
SiteMapDataSource控件
SiteMapDataSource控件无需配置,拖放一个TreeView控件和一个SiteMapDataSource控件在页面,指定TreeView数据源即可,如图8-26所示。
图8-26配置数据源
配置完成后,数据绑定控件会自动读取Web.sitmap文件并生成导航。
当使用了SiteMapDataSource控件后,数据绑定控件就能够绑定SiteMapDataSource控件并自动读取相应的值并生成导航,当需要对导航进行修改时,只需要修改Web.sitemap即可,方便了站点导航功能的使用和维护。
运行后如图8-27所示。
数据源控件
通用性:
1:
DataBind函数
每当执行完与数据库的交互之后(或控件的模式改变之后),调用该函数可以是DataBind的对象与数据进行绑定,显示出所指示的模式,该方案可以解决有时在点击两次按钮才会有的效果以及模式的更新
数据列表控件
2:
操作函数的通用性
对于那些Item+SqlOperate这种类型的等表示每行数据的增删改查操作函数(对数据源执行XXX命令的函数),可以利用Button.CommandName=operate(Edit,Insert,Update,Cancel)进行调用
期中Operate可以等于Inserted/InsertingEdited/edittingupdated/updating等就是下列函数
3:
!
IsPostBack通用性
如果是自定义绑定数据,则在Page_Load函数中添加下列语句,通常是第一次显示时加载数据,后面都是手动绑定数据()
protectedvoidPage_Load(objectsender,EventArgse)
{
if(!
IsPostBack)//如果不加这个会有一点问题,
//例如在ListView当中点击按钮(CommandName=Insert)没有响应事件
{
this.ListView1.DataSource=SqlDataSource1;
this.ListView1.DataBind();
}
}
4:
部分通用性
一些数据控件设置它的EditIndex=-1就代表更新完毕,返回只读状态例如GridViewListView
Repeater控件
AlternatingItemTemplate:
放在ItemTemplate的前面或者后面用于交替显示数据wa(例如奇数红色偶数黑色)。
ItemTemplate:
指定如何显示选项。
HeaderTemplate:
建立如何显示标题。
FooterTemplate:
建立如何显示页脚。
SeparatorTemplate:
指定如何显示不同选项之间的分隔符。
重复列表控件最常用的事件有ItemCommand、ItemCreated、ItemDataBound。
当创建一个项或者一个项被绑定到数据源时,将触发ItemCreated和ItemDataBound事件。
当重复列表控件中有按钮被激发时,会触发ItemCommand事件。
在ItemCommand中,为了自定义按钮控件相应事件,开发人员必须指定RepeaterCommandEventArgs参数获取CommandArgument、CommandName和CommandSource三个属性对应的值,示例代码如下所示。
RepeaterID="Repeater1"runat="server"DataSourceID="SqlDataSource1"
onitemcommand="Repeater1_ItemCommand">
1pxdashed#ccc;padding:
5px5px5px5px;">
<%#Eval("title")%>
ButtonID="Button1"runat="server"Text="按钮"
CommandArgument='<%#Eval("title")%>'/>