江湖救急:GirdView点击列头排序同时修改列头名

问题描述

遇到一个需求:GirdView表:用户希望触发列头排序OnSorting的时候同时将列头显示内容"金额<"改为"金额>",<asp:BoundFieldHeaderText="金额<"SortExpression="price"DataField="price"ItemStyle-HorizontalAlign="Center"DataFormatString="{0:F}"/>,我希望在利用GirdView绑定上解决,而不是换成repeater控件,换成其他控件工程量太大,不好改,各位道友有什么好的建议吗

解决方案

解决方案二:
使用jquery修改不就可以了吗?
解决方案三:
对GirdView控件不熟,HeaderText="<%=_price%>"后台中声明变量,OnSorting事件中修改。
解决方案四:
大概思路可以是这样子的:在onsorting事件中,获取当前行,然后e.Row.Columns[0].HeaderText="XXXX";具体的代码还要再修改
解决方案五:
GridView控件点击行修改信息示例//GridView设置<asp:GridViewID="GridView1"runat="server"AutoGenerateColumns="False"BackColor="White"BorderColor="#336666"BorderStyle="Double"BorderWidth="3px"CellPadding="4"GridLines="Horizontal"onrowcancelingedit="GridView1_RowCancelingEdit"onrowdeleting="GridView1_RowDeleting"onrowediting="GridView1_RowEditing"onrowupdating="GridView1_RowUpdating"PageSize="4"style="font-size:small"AllowPaging="True"onpageindexchanging="GridView1_PageIndexChanging"><RowStyleBackColor="White"ForeColor="#333333"/><Columns><asp:BoundFieldDataField="BccdID"HeaderText="编号"ReadOnly="True"/><asp:BoundFieldDataField="BccdName"HeaderText="版本名称"/><asp:BoundFieldDataField="BccdPrice"HeaderText="词典价格"/><asp:BoundFieldDataField="BccdSaleDate"DataFormatString="{0:d}"HeaderText="发行日期"/><asp:BoundFieldDataField="BccdInStock"HeaderText="现有库存量"/><asp:CommandFieldHeaderText="选择"ShowSelectButton="True"/><asp:CommandFieldButtonType="Image"CancelImageUrl="~/Images/BtnCancel.gif"EditImageUrl="~/Images/BtnUpdate.gif"HeaderText="编辑"ShowEditButton="True"UpdateImageUrl="~/Images/BtnSave.gif"/><asp:TemplateFieldHeaderText="删除"ShowHeader="False"><ItemTemplate><asp:ImageButtonID="ImageButton1"runat="server"CommandName="Delete"ImageUrl="~/Images/BtnDelete.gif"onclientclick="returnconfirm('确定删除吗?');"/></ItemTemplate></asp:TemplateField></Columns><FooterStyleBackColor="White"ForeColor="#333333"/><PagerStyleBackColor="#336666"ForeColor="White"HorizontalAlign="Center"/><SelectedRowStyleBackColor="#339966"Font-Bold="True"ForeColor="White"/><HeaderStyleBackColor="#336666"Font-Bold="True"ForeColor="White"/></asp:GridView>//绑定数据控件显示信息protectedvoidPage_Load(objectsender,EventArgse){if(!IsPostBack){BindData();//调用自定义方法绑定数据到控件}}//codego.net/tags/11/1/publicvoidBindData(){stringstrCon=ConfigurationManager.AppSettings["conStr"];//定义数据库连接字符串stringsqlstr="select*frommrbccd";//定义执行查询操作的SQL语句SqlConnectioncon=newSqlConnection(strCon);//创建数据库连接对象SqlDataAdapterda=newSqlDataAdapter(sqlstr,con);//创建数据适配器DataSetds=newDataSet();//创建数据集da.Fill(ds);//填充数据集GridView1.DataSource=ds;//设置GridView控件的数据源为创建的数据集ds//将数据库表中的主键字段放入GridView控件的DataKeyNames属性中GridView1.DataKeyNames=newstring[]{"BccdID"};GridView1.DataBind();//绑定数据库表中数据}//处理编辑数据连接publicboolExceSQL(stringstrSqlCom){//定义数据库连接字符串stringstrCon=ConfigurationManager.AppSettings["conStr"];//创建数据库连接对象SqlConnectionsqlcon=newSqlConnection(strCon);SqlCommandsqlcom=newSqlCommand(strSqlCom,sqlcon);try{//判断数据库是否为连连状态if(sqlcon.State==System.Data.ConnectionState.Closed){sqlcon.Open();}//执行SQL语句sqlcom.ExecuteNonQuery();//SQL语句执行成功,返回true值returntrue;}catch{//SQL语句执行失败,返回false值returnfalse;}finally{//关闭数据库连接sqlcon.Close();}}//编辑数据行修改数据protectedvoidGridView1_RowUpdating(objectsender,GridViewUpdateEventArgse){//取得编辑行的关键字段的值stringbccdID=GridView1.DataKeys[e.RowIndex].Value.ToString();//取得文本框中输入的内容stringbccdName=((TextBox)(GridView1.Rows[e.RowIndex].Cells[1].Controls[0])).Text.ToString().Trim();stringbccdPrice=((TextBox)(GridView1.Rows[e.RowIndex].Cells[2].Controls[0])).Text.ToString().Trim();stringbccdSaleDate=((TextBox)(GridView1.Rows[e.RowIndex].Cells[3].Controls[0])).Text.ToString().Trim();stringbccdInStock=((TextBox)(GridView1.Rows[e.RowIndex].Cells[4].Controls[0])).Text.ToString().Trim();//定义更新操作的SQL语句stringupdate_sql="updatemrbccdsetBccdName='"+bccdName+"',BccdPrice='"+bccdPrice+"',bccdSaleDate='"+Convert.ToDateTime(bccdSaleDate)+"',BccdInStock='"+bccdInStock+"'whereBccdID='"+bccdID+"'";boolupdate=ExceSQL(update_sql);//调用ExceSQL执行更新操作if(update){Response.Write("<scriptlanguage=javascript>alert('修改成功!')</script>");//设置GridView控件的编辑项的索引为-1,即取消编辑GridView1.EditIndex=-1;BindData();}else{Response.Write("<scriptlanguage=javascript>alert('修改失败!');</script>");}}

时间: 2024-10-31 14:41:20

江湖救急:GirdView点击列头排序同时修改列头名的相关文章

C++ 简单实现MFC ListControl 点击列头排序_C 语言

说明: SetItemData可以为每一行绑定一个DWORD类型的变量.用GetItemData可以获得这个变量. 举个例子,假设CListCtrl中你需要显示某个数据表中的记录,该表有个流水号主键ID,一般这个ID值本身没有什么意义,用户也不需要看,因此在CListCtrl的可见列中,你不需要显示.但往往做具体查询等操作时,你又需要用这个ID来完成.这时,用SetItemData将其绑定到每一行,将非常方便,用户操作哪一行,则用GetItemData可以得到对应记录的ID,直接用来做操作,很爽

jQuery EasyUI学习教程之datagrid点击列表头排序_jquery

这个示例展示如何排序datagrid通过点击列表头. 在datagrid的所有columns 可以通过点击列表头排序,你可以定义哪行可以排序,默认的列是不能排序的除非你设置sortable 属性为true 创建an DataGrid <table id="tt" class="easyui-datagrid" style="width:600px;height:250px" url="datagrid8_getdata.php&q

asp.net中单击Datagrid列头排序(vb.net)

asp.net|datagrid|排序 请按照步骤进行:1: datagrid的属性 AllowSorting="true":表示启用DataGrid排序的功能 2: 在HTML里面(加在table外面)加入一个<input id="sortfield" type="hidden" value="activity_student_id" name="sortfield" runat="ser

C# winform datagridview 列头排序和加过滤条件 二维表头 加合计行 dll控件

问题描述 过滤条件二维表头合计 解决方案

怎么禁止在listview中实现列头的滚动呢?

问题描述 怎么禁止在listview中实现列头的滚动呢? 怎么禁止在listview中实现列头的滚动呢?想要让listview的列头变成扁平显示怎么操作? 解决方案 http://bbs.csdn.net/topics/390823453 这样的效果? 解决方案二: ListView点击列头排序功能实现[WPF]ListView点击列头排序功能实现 解决方案三: 好像没有这个功能吧,"列头"悬浮可以用别的东西伪造了,样式一样做成一样的,就是你要的效果了 解决方案四: 不能的,它是一个整

sql-网页实现点击列头自动排序!!急!!!!!

问题描述 网页实现点击列头自动排序!!急!!!!! 对整个系统中所有的table实现功能,点击列头对当咧实现自动排序,再点击反向排序. 解决方案 datatables你值得拥有:参考网站:http://blog.csdn.net/qq_19558705/article/details/50393035 解决方案二: JavaScript Table排序表格排序的javascript代码

C#点击DataGridView的列头进行排序?

问题描述 数据绑定显示到datagridview后点击列头进行排序求大神指点!本人小白! 解决方案 解决方案二: 解决方案三:系统自带就有这功能的,设置下属性就OK了解决方案四:光设置是不行滴网查了很多还得写代码!点击列头进行正序倒序!

动态绑定datagrid,点击列头进行排序显示一片空白,大家帮帮忙啊!!!!!!!!!!!

问题描述 绑定datagrid的代码col=NewBoundColumncol.DataField="order_date"col.HeaderText="订货日期"col.SortExpression="order_date"col.ItemStyle.HorizontalAlign=HorizontalAlign.RightDataGrid1.Columns.Add(col)排序代码PrivateSubMySort()DimthisSortF

绑定datagrid以后,列头不能点击

问题描述 为什么我绑定datagrid以后,datagrid的前两列不能点击,因此想点击列头进行排序的功能不能实现.我是在运行时自动创建列,没有在属性生成器里面添加绑定列.请问怎么解决? 解决方案 解决方案二:up解决方案三:GOON``解决方案四:该回复于2009-05-06 09:38:34被版主删除解决方案五:AllowSorting="True"解决方案六:我已经设置了AllowSorting="True",但是除了最前面两列以外,其它列都可以点击排序