动态生成树,用的是VS自带TreeView控件。我想做个右键弹出的菜单来添加删除。做的是web页面。应该怎么做。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了动态生成树,用的是VS自带TreeView控件。我想做个右键弹出的菜单来添加删除。做的是web页面。应该怎么做。相关的知识,希望对你有一定的参考价值。

右键弹出的我先是弄了个JS弹出的,javascript还不是很熟,不知道怎么写数据绑定,删除添加修改这些。所以添加删除修改这些功能想用asp.net的后台弄。是做web页面的,不是winform的.

我给你 从数据库读数据到xml,然后绑定treeview

 思路给你,具体代码就靠个人能力了

参考技术A 可以读取XML文件来实现

利用VS2015自带的报表制作报表

我用的是VSEnterprise2015

注意:如果要用VS自带的报表,就需要在安装Microsoft SQL Server Data Tools

下面讲讲具体步骤:

1.添加winform界面

2.添加生成报表界面这里要注意,工具箱的数据里面要有ReportViewer控件,如果没有则要工具箱-》数据-》选择项-》.NET Framework组件-》勾选ReportViewer(命名空间对应的是Microsoft.Reporting.WinForms【winform程序,如果是asp.net则勾选命名空间是Microsoft.Reporting.WebForms】)

生成报表界面对应代码

            try
            {
                this.reportViewer1.LocalReport.ReportPath = "Report_JSHZB.rdlc";//Report_JSHZB.rdlc对应添加的报表文件
                DataTable dt = new DataTable();
                dt.Columns.Add("BMMC");
                dt.Columns.Add("JYBS", typeof(int));//对应报表文件中的数据集字段
                dt.Columns.Add("JYJE", typeof(decimal));
                dt.Columns.Add("HCBS", typeof(int));
                dt.Columns.Add("HCJE", typeof(decimal));
                dt.Columns.Add("JSJE", typeof(decimal));
                dt.Rows.Add("第一食堂", 13305, 27246.68, 0, 0.0, 27246.68);
                dt.Rows.Add("第二食堂", 12277, 27965.63, 1, 15.0, 27950.63);
                dt.Rows.Add("超市", 26, 1062.90, 0, 0.0, 1065.90);
                dt.Rows.Add("医务室", 78, 857.00, 0, 0.0, 857.00);
                dt.Rows.Add("电子阅览室", 157, 871.00, 0, 0.0, 871.00);
                dt.Rows.Add("图书馆", 120, 1176.50, 0, 0.0, 1176.50);
                dt.Rows.Add("学生公寓沐浴", 693, 5371.19, 0, 0.0, 5371.19);
                ReportDataSource rds1 = new ReportDataSource("DataSet_JSHZB", dt);//DataSet_JSHZB对应报表文件中的数据集
                this.reportViewer1.LocalReport.DataSources.Add(rds1);
                ReportParameter Rar_CNDate = new ReportParameter();
                Rar_CNDate.Name = "Rar_CNDate";//报表参数,对应报表文件中的参数
                Rar_CNDate.Values.Add(CNDate.ToString("yyyy-MM-dd"));
                ReportParameter Rar_Time = new ReportParameter();
                Rar_Time.Name = "Rar_Time";
                Rar_Time.Values.Add(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
                ReportParameter Rar_UserName = new ReportParameter();
                Rar_UserName.Name = "Rar_UserName";
                Rar_UserName.Values.Add("系统管理员");
                this.reportViewer1.LocalReport.SetParameters(Rar_CNDate);
                this.reportViewer1.LocalReport.SetParameters(Rar_Time);
                this.reportViewer1.LocalReport.SetParameters(Rar_UserName);
                this.reportViewer1.RefreshReport();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            this.reportViewer1.RefreshReport();

 

3.添加报表文件

4.最终生成的报表

 

以上是关于动态生成树,用的是VS自带TreeView控件。我想做个右键弹出的菜单来添加删除。做的是web页面。应该怎么做。的主要内容,如果未能解决你的问题,请参考以下文章

wpf如何根据输入信息动态生成treeview

使用treeview控件读数据库动态生成带checkbox复选框的树形导航菜单asp.net(C#),急求帮助还可加分

利用VS2015自带的报表制作报表

asp.net控件treeview如何实现无刷新效果

vb.net中treeview控件用法

KendoUI TreeView 动态 JSON