ASPXGridView外观显示

  一。ASPXGridView外观显示
属性:
Caption
---- 列的标题(
KeyFieldName
---- 数据库字段
SEOFriendly 是否启用搜索引擎优化
Summary 指定分页汇总信息的格式

Setting节点的ShowFilterRow
= True设置快速查找功能

SettingsBehavior.AllowFocusedRow
= true 高亮选中的行,即选中行变色
SettingsBehavior.AllDragDrop
= false禁止拖动标题列头
SettingsBehavior.AllowSort实现列头点击后是否可以排序
SettingsPager.ShowEmptyDataRows
= True;当数据行为空时,显示空行
SettingsPager.PageSize 每页显示的记录总数
AllButton.Text “全部数据显示”按钮的文本
AllButton.Visible  是否显示“全部数据显示”按钮
FirstPageBuotton
/ LastPageButton / NextPageButton / PrevPageButton / 对应首页、末页、下页、上页,设置同上。
NumericButtonCount 最小值为1,控制页码显示个数
protected void ASPxGridView1_PageIndexChanged( object sender, EventArgs e)
    {
        databind();
// 只需重新绑定数据即可实现上下翻页
    }
新建的列默认是GridViewDataTextColumn类型,选择工具栏的Change To变更列的类型,可以改变新增或修改时的编辑方式。
设置日期类型显示格式,在“行为”PropertiesDateEdit
-- DisplayFormatString -- 例如:{ 0 :yyyy年MM月}

当选择了show Group Panel时,FocusedRowChanged事件,重绑定数据,使用时先选中行,再查看
protected void ASPxGridView1_FocusedRowChanged( object sender, EventArgs e)
    {
        getdata();
    }

禁止某一列进行编辑,该列的行为
- EditFormSettings - Visible = False

代码中隐藏编辑列的增加,删除,更新按钮
(ASPxGridView1.Columns[编辑列]
as GridViewCommandColumn).NewButton .Visible = true ;
(ASPxGridView1.Columns[编辑列]
as GridViewCommandColumn).DeleteButton.Visible = true ;
(ASPxGridView1.Columns[
8 ] as GridViewCommandColumn).UpdateButton .Visible = true ;
二。ASPXGridView绑定数据
ASPxGridView1.KeyFieldName
= " ID " ; // 指定主键。直接更新数据和子表绑定 需要用到

ASPxGridView1.DataSource
= dt.defaultView; // 指定Grid的数据
ASPxGridView1.DataBind();  // 执行绑定
注意,如果查询结果字段有别名,编辑该字段时,UnboundType应设为Object
三。ASPXGridView查找
过滤数据,查找数据
方式一、展开列标题旁边的过滤清单过滤数据(类似Excel的过滤方式)grid.Settings.ShowHeaderFilterButton
= true ;过滤清单列出了该列出现的所有数据。还可以自定义过滤清单的内容,用法参阅:http: // demos.devexpress.com/ASPxGridViewDemos/Filtering/HeaderFilter.aspx

方式二、在列头显示字段过滤条件输入框 grid.Settings.ShowFilterRow
= true ; 显示条件判断方式下拉列表grid.Settings.ShowFilterRowMenu = true ;



四删除数据
 
protected void ASPxGridView1_RowDeleting( object sender, DevExpress.Web.Data.ASPxDataDeletingEventArgs e)
    {
      e.Cancel
= true ; // 否则,只有刷新页面才能看到删除后的结果
        int id = Convert.ToInt32( e.Keys[ 0 ]); // 获取ID
      upd.DelDownFileList(id); // 从数据库删除记录
    UpLoadFileListBind(); // 数据表绑定

    }
ASPxGridView自带的删除提示,设两个属性即可:
SettingsBehavior.
==> ConfirmDelete = True
SettingsText
==> ConfirmDelete = 要提示的字符串
五.更新
取值 用e.NewValues[索引]
并且记得更新数据后 ASPxGridView1.CancelEdit();
// 结束编辑状态
        e.Cancel = true ;
        bind();
例子:
// 更新
    protected void ASPxGridView1_RowUpdating( object sender, DevExpress.Web.Data.ASPxDataUpdatingEventArgs e)
    {
        Bill.Message m
= new Bill.Message();

       
// 取值 用e.NewValues[索引]
        string id = Convert.ToString(e.Keys[ 0 ]);
       
string event_date = e.NewValues[ 1 ].ToString();
       
string event_title = e.NewValues[ 2 ].ToString();
       
string event_description = e.NewValues[ 3 ].ToString();
       
string tag = e.NewValues[ 4 ].ToString();
        m.Message_update(id, event_date, event_title, event_description, tag);
      
        ASPxGridView1.CancelEdit();
// 结束编辑状态
        e.Cancel = true ;
        bind();
    }
六排序
在BeforeColumnSortingGrouping事件中重新绑定一下数据
七.分页
PageIndexChanged事件里重新绑定一下数据


1 .动态添加非数据绑定列,例子:动态添加行号列
if ( ! IsPostBack)
        {
           
// 动态添加行号非绑定数据
            GridViewDataTextColumn dl = new GridViewDataTextColumn();
            dl.Caption
= " 行号 " ;
            dl.FieldName
= " hh " ; // 该列绑定的字段hh
            dl.UnboundType = DevExpress.Data.UnboundColumnType.String; // 非数据绑定类型为字符型
            dl.PropertiesTextEdit.DisplayFormatString = " c " ; // 显示字符的格式
            dl.PropertiesTextEdit.FocusedStyle.ForeColor = System.Drawing.Color.Red;
            dl.VisibleIndex
= 0 ; // 设置行号列的索引位置
            ASPxGridView1.Columns.Insert( 0 , dl); // 把行号列插入0之前
          
          
            getdata();
            ASPxGridView1.Caption
= " IP为 " + GetClientIP() + " 的用户,正在查看网银终端更新内容 " ;
  
        }

在CustomUnboundColumnData事件中
protected void ASPxGridView1_CustomUnboundColumnData( object sender, ASPxGridViewColumnDataEventArgs e)
    {
       
if (e.Column.FieldName == " hh " && e.IsGetData)
            e.Value
= (e.ListSourceRowIndex + 1 ).ToString();
    }

2 .ASPxComboBox列的相关操作
简单的方法是
1 .FiledName写主表与此字段有关联外键字段:例如uid
2 .在PropertiesCombobox下面找这几个属性:
然后在客户姓名的这一列的DataSourceId,给它绑定上我们字表的ObjectDataSource
在TextField设置字段名称,例如:name
在ValueField设置名称应该就是字表的主键(也就是主表引用字表的外键),例如:uid
这样就可以轻松做到,不用写代码,绑定多张表

手写代码的方法来绑定ASPxComboBox
在aspx中将该列的
- 行为 - PropertiesComboBox - ValuesType设为System.String避免ComboBox出现无法选中的现象

using DevExpress.Web.ASPxGridView;
using DevExpress.Web.ASPxEditors;
// 在页面加载时,给combox列赋值,这里的workgroupID是在ASPxGridview中的Combox列绑定的字段
        (ASPxGridView1.Columns[ " WorkgroupID " ] as GridViewDataComboBoxColumn).PropertiesComboBox.ValueType = typeof ( int );
      
            fangqm.Netbank.Core.groupInfo
group = new fangqm.Netbank.Core.groupInfo();
            DataTable dt
= group .groupSelectAll(); // table
            for ( int i = 0 ; i < dt.Rows.Count; i ++ )
            {
               
int id = Convert.ToInt32(dt.Rows[i][ 0 ]);
               
string v = dt.Rows[i][ 1 ].ToString();
                (ASPxGridView1.Columns[
" WorkgroupID " ] as GridViewDataComboBoxColumn).PropertiesComboBox.Items.Add( new ListEditItem(v, id));
             
            }
在表格进行更新,添加操作时,e.NewValues[
1 ])即可取到客户端的值,例如:
model.WorkgroupID
= Convert.ToInt32(e.NewValues[ 1 ]);

注意应先呈现COMBOX列,后绑定数据,字段绑定是区分大小写的,要和SELECT语句字段名一模一样
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值