主要内容
//公司记录部分
1. 以后的开发当中尽量不要使用脚本弹出代码,原因是会影响数据的呈现效果,有时,会呈现的数据文字格式发现些微的变化,影响美观!
2. 替换上面所说的脚本弹出代码的是,C#提供的一个方法:
this.Page.ClientScript.RegisterStarupScript(this.GetType(),Guid.NewGuid(),"");
1. this.GetType()表示当前对象数据类型
2. Guid.NewGuid()获取一个全球唯一标识符作为KEY
3. ""这个字符串参数里就是脚本
这个方法能够保证我们的页面的CSS效果不会因为弹出脚本而受到影响。
3. 当删除一个条学生信息时,需要弹出一个确认删除对话,以避免用户的因误删除后悔莫及。
1. 这个操作需要在GridView控件的RowDataBound事件处理。
这个事件,就是GridView绑定一行,就触发一次,这里包含列头和列脚,所以在使用的时候要注意,过滤到列头列脚的事件触发动作。
如:
//删除确认对话框的实现
(e.Row.FindControl("lkDel") as LinkButton).Attributes.Add("onclick","return confirm('您确认删除吗?')");
2. 再人性化点的就是,提示预删除的行信息内容
如:
//刚做错了,这里需要先排除列头列脚,因为这个事件也同样会被列头列脚触发
if (e.Row.RowType == DataControlRowType.DataRow)
{
//更加人性化一点,提供信息中加入预删除的内容
string name = (e.Row.FindControl("lblName") as Label).Text;
//删除确认对话框的实现
(e.Row.FindControl("lkDel") as LinkButton).Attributes.Add("onclick","return confirm('您确认删除【"+name+"】吗?')");
}
//家中记录部分
1. 添加开删除事件处理
也是通过GridView控件的子控件获取学号进行处理删除的处理
2. 由于response.write()形式的弹出脚本,可能会影响GridView控件呈现数据的字体现象,影响数据显示的呈现,建议使用C#的控件脚本注册方法:
如:(e.Row.FindControl("lbDel") as LinkButton).Attributes.Add("onclick", "return confirm('您确认要删除吗?')");
3. 为了更好的人性化,可以在提示信息中加载要删除的信息内容信息,让用户确认是否删除有误。
同样中获取要删除的行中的控件内容
但是这里有个问题出现了,当点击编辑按钮时会报错。
4. 需要注意的是GridView控件是不支持插入数据行的功能的。
5. GridView的光棒效果
光棒效果即:当鼠标移动到GridView中的某一行时,行的背景色显示一种效果,当鼠标离开时,效果变化或恢复到原的样子。
这个效果需要被应用到GridView中每一行中,所以这段码还是要写在RowDataBound事件中。同样也是作用于,GridView中的数据行上,也即是也同样需要过滤到列头列脚的。
如:if (e.Row.RowType == DataControlRowType.DataRow){}
同2项中所记录一样,2中是对一个子控件的属性注册一个JS脚本,这里是需要对GridView的数据行的属性注册一个JS脚本,KEY就是行的事件,这里就是mouseover 和 mouseout
如:
//GridView中的数据行的光棒效果
e.Row.Attributes.Add("onmouseover", "w=this.style.backgroundColor; this.style.backgroundColor='yellow'");//鼠标滑过时
e.Row.Attributes.Add("onmouseout","this.style.backgroundColor=w");//鼠标滑出时恢复原来的背景
6. GridView控件的分页功能
使用的是GridView控件的一个属性:AllowPageing打开GridView的分页功能,PageSize是一页显示的数据条数,
不过,在实际的开发当中,却是很少人使用
当点击下一页时,需要处理GridView控件的PageIndexChanging事件,这里使用GridView控件的PageIndex属性,获取用户点击的页的索引,这个索引号是由事件参数对象携带的,e.NewPageIndex
如:this.GridView1.PageIndex=e.NewPageIndex
注意,别忘了再次加载一次数据。
7. GridView控件,虽说功能强大,但是由于它是自动生成的代码,有很多的冗余代码在里,只适合一些小型的网站,或WinForm应用程序,对于大型的应用程序或网站是不推荐使用GridView的。