aspxgridview使用笔记

来源:互联网 发布:p图软件 编辑:程序博客网 时间:2024/06/15 21:48

aspxgridview使用笔记

Aspxgridview可以实现直接导出excel、pdf等文档,对表中数据进行过滤等gridview无法实现的功能。

1.过滤(filtering)(即快速查找功能)

gridview的属性setting页中选择ShowFilterRow=True;

即可在表单上方出现过滤框。

2.导出文档  

   添加一个ASPxGridViewExporter控件到Page,将GridViewID设为需要导出数据的Grid,调用以下方法实现导出。

ASPxGridViewExporter1.WriteXlsToResponse

ASPxGridViewExporter1.WriteCvsToResponse

ASPxGridViewExporter1.WritePdfToResponse

ASPxGridViewExporter1.WriteRtfToResponse

例如导出excel文件

      protected void Button1_Click(object sender, EventArgs e)

        {

            ASPxGridViewExporter1.FileName=DateTime.Now.ToString("yyyyMMddhhmmss") + 导出的数据表"导出文件的名称。

            ASPxGridViewExporter1.GridViewID = "ASPxGridView1";                                                                                      导出文件数据的来源

            ASPxGridViewExporter1.WriteXlsToResponse();           导出为excel文件

        }

3.删除提示

ASPxGridView自带的删除提示,设两个属性即可:
SettingsBehavior. ==> ConfirmDelete=True

                ==>allow drag drop=   是否允许用户通过拖拽改变表格列的位置

                ==>allow sellect by row click =允许用户通过点击某一行而选中某行,被选中行变色

                ==>allow sort =    允许通过点击列头进行排序

                
SettingsText ==> ConfirmDelete=要提示的字符串 

Settings Text ==>CommandDelete=删除键名称

                CommadEdit=修改键名称

4. Aspxgridview表单中某列的数据绑定

例。

 <dx:GridViewDataTextColumn Caption="已保护扇区" FieldName="protectedsector" 

                    VisibleIndex="4">

 </dx:GridViewDataTextColumn>

 <dx:GridViewDataTextColumn Caption="计算机id" FieldName="hostid" VisibleIndex="5">

 </dx:GridViewDataTextColumn>

此为表的两列。(aspx文件)

若想将hostid=1||2||3.....显示为字符串文字。

加入

<%@ Import NameSpace="FileManagerUI.Web" %>   ---------先在aspx页面引用


 <dx:GridViewDataTextColumn Caption="计算机id" FieldName="hostid" VisibleIndex="5">

  <DataItemTemplate>                                  //模板列

  <%# cl.Tran(Eval("status").ToString ())%>           //在cs文件cl类中,写Tran函数

  </DataItemTemplate>

 </dx:GridViewDataTextColumn>

Tran函数  public static string Tran(string si)  //参数类型应和数据表中一致

           {

              int i = Convert.ToInt32(si);   

              if (i == 4)

                  return “好电脑”;

             }

**<%#   %>

5. get aspxgridview表中focusedrow 中某列的数据进行传递

   Allowfocusedrow 设为true

<dx:GridViewDataHyperLinkColumn Caption="志" FieldName="hostid"                     VisibleIndex="8">                                             //设置导航按钮新列

                    <PropertiesHyperLinkEdit                       NavigateUrlFormatString="/lg.aspx?hostid={0}" 

                        Text="查看导出日志" TextFormatString="">

                    </PropertiesHyperLinkEdit>                  //设置超链接按钮功能

                </dx:GridViewDataHyperLinkColumn>

6. 读取表中数据,显示在aspxgridview中

request  参数值。有,显示参数相同的行。无,显示全部行

            SqlDataSource1.SelectCommand = "select * from clientlog order by logid desc";

            String str = Request.QueryString["hostid"];

            if (str != null)

            {

                SqlDataSource1.SelectCommand = "select * from clientlog where hostid='" + str + "' order by logid desc";

                SqlDataSource1.DataBind();

            }

7. 导出pdf中文出现乱码

修改字体,ASPxGridViewExporter1.Styles.Default.Font.Name = "Simsun";

***导出pdf由于列表长度太长导致pdf分为两页。

将aspxgridviewexporter控件的landscape属性设为true即可

8. aspxgridview  进度列

     Columns ---  progressBar

9. Aspxgridview   自动更新数据 

拖一个timer控件。Interval属性设置自动更新间隔。后台代码写动作

 protected void Timer1_Tick(object sender, EventArgs e)

        {

        }

10. Aspxgridview   删除列,进行验证

      添加aspxgridview的itemdeleting事件进行验证。

删除后的操作在itemdeleted事件中写

插入时进行验证就是iteminserting事件