如何将指定文件夹下的所有报表文件循环加载到GridView空间中 并且打开某条数据

本文介绍了一个使用ASP.NET GridView控件展示文件列表的例子,并详细解释了如何通过代码填充GridView的数据源,包括设置列属性和处理空数据情况。

前台GridView的控件源码

<asp:GridView runat="server" ID="gvList" AutoGenerateColumns="false" Width="" BorderWidth="0" CellPadding="1" CellSpacing="1" BackColor="#99BBE8"  >
            <EmptyDataTemplate>
                <div class="divMsg">系统提示:未能查询到相关的记录。</div>
            </EmptyDataTemplate>
             <Columns>
       <asp:BoundField DataField="filename" HeaderText="查询文件名称" HeaderStyle-HorizontalAlign="Left">
        <ItemStyle  HorizontalAlign="Left" Width="400px"/>
       </asp:BoundField>
                <asp:TemplateField>
                    <ItemTemplate>
                        <a href="/WebReport/ReportServer?reportlet=<%#DataBinder.Eval(Container.DataItem, "filename")%>"><img alt="打开" src="../images/open.jpg" style="border-width:0px;" /></a>
                    </ItemTemplate>
                    <ItemStyle HorizontalAlign="Left" Width="50px"/>
                </asp:TemplateField>        
      </Columns>
            <HeaderStyle CssClass="gvHeader" />
            <RowStyle CssClass="gvRow2"/>
            <EmptyDataRowStyle CssClass="gvEmpty" />
        </asp:GridView>

后台代码

 

protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                GetFileName();
            }
        }
        /// <summary>
        /// 得到文件名
        /// </summary>
        /// <returns></returns>
        public void GetFileName()
        {
            //在指定目录及子目录下查找文件,在listBox1中列出子目录及文件
            DirectoryInfo Dir = new DirectoryInfo("C:\\FineReport6.5\\WebReport\\WEB-INF\\reportlets\\Query\\省检科院");
            DataTable dt = new DataTable();//创建虚拟表
            dt.Columns.Add(new DataColumn("filename", typeof(string)));//创建列

            try
            {
                foreach (FileInfo f in Dir.GetFiles("*.* "))//查找文件
                {
                    bool isOk = false;
                    string fileName = f.ToString();
                    string filePostfix = Path.GetExtension(fileName);
                    string[] allowPostfix = { ".cpt" };
                    foreach (string item in allowPostfix)//判断所有的报表文件是否全部未 .cpt格式
                    {
                        if (filePostfix == item)
                        {
                            isOk = true;
                            break;
                        }
                    }
                    if (isOk)
                    {
                        DataRow dr = dt.NewRow();
                        dr["filename"] = f.ToString();
                        dt.Rows.Add(dr);
                    }

                }
                gvList.DataSource = dt;
                gvList.DataBind();
            }
            catch (Exception e)
            {
                //MessageBox.Show(e.Message);
            }
        }

内容概要:本文围绕“基于数据驱动的 Koopman 算子的递归神经网络模型线性化,用于纳米定位系统的预测控制研究”展开,提出了一种结合Koopman算子理论与递归神经网络(RNN)的数据驱动建模方法,旨在对非线性纳米定位系统进行有效线性化建模,并实现高精度的模型预测控制(MPC)。该方法利用Koopman算子将非线性系统映射到高维线性空间,通过递归神经网络学习系统的动态演化规律,构建可解释性强、计算效率高的线性化模型,进而提升预测控制在复杂不确定性环境下的鲁棒性与跟踪精度。文中给出了完整的Matlab代码实现,涵盖数据预处理、网络训练、模型验证与MPC控制器设计等环节,具有较强的基于数据驱动的 Koopman 算子的递归神经网络模型线性化,用于纳米定位系统的预测控制研究(Matlab代码实现)可复现性和工程应用价值。; 适合人群:具备一定控制理论基础和Matlab编程能力的研究生、科研人员及自动化、精密仪器、机器人等方向的工程技术人员。; 使用场景及目标:①解决高精度纳米定位系统中非线性动态响应带来的控制难题;②实现复杂机电系统的数据驱动建模与预测控制一体化设计;③为非线性系统控制提供一种可替代传统机理建模的有效工具。; 阅读建议:建议结合提供的Matlab代码逐模块分析实现流程,重点关注Koopman观测矩阵构造、RNN网络结构设计与MPC控制器耦合机制,同时可通过替换实际系统数据进行迁移验证,深化对数据驱动控制方法的理解与应用能力。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值