示例#1
0
 public void FillTreeview(ReportingService2005 reportService2005)
 {
     Cursor.Current = Cursors.WaitCursor;
     treeView1.BeginUpdate();
     treeView1.Nodes.Clear();
     treeView1.Nodes.Add(TreeViewHandling.GetFolderAsNodes(reportService2005, true));
     treeView1.EndUpdate();
     treeView1.ExpandAll();
     Cursor.Current = Cursors.Arrow;
 }
示例#2
0
 private static void RefreshSourceTreeView(TreeView treeView, ReportServerProperties reportingService2005)
 {
     if (treeView.InvokeRequired)
     {
         treeView.Invoke(new MethodInvoker(treeView.BeginUpdate));
         treeView.Invoke(new MethodInvoker(() => treeView.Nodes.Clear()));
         treeView.Invoke(new MethodInvoker(() => treeView.Nodes.Add(TreeViewHandling.GetFolderAsNodes(reportingService2005.ReportsServerInstance))));
         treeView.Invoke(new MethodInvoker(treeView.EndUpdate));
         treeView.Tag = reportingService2005;
     }
     else
     {
         treeView.BeginUpdate();
         treeView.Nodes.Clear();
         treeView.Nodes.Add(TreeViewHandling.GetFolderAsNodes(reportingService2005.ReportsServerInstance));
         treeView.EndUpdate();
         treeView.Tag = reportingService2005;
     }
 }
示例#3
0
        private void TransferItems()
        {
            if (tvReportServerDestination.SelectedNode == null)
            {
                MessageBox.Show(@"Merci de sélectionner le dossier destination");
                return;
            }

            FileNameAndPath dataSourceMap = null;

            using (var frmDataSource = new frmDataSource())
            {
                frmDataSource.FillTreeview(ReportServerDestination.ReportsServerInstance);
                if (frmDataSource.ShowDialog() == DialogResult.OK)
                {
                    dataSourceMap = frmDataSource.SelectedNode;
                }
            }

            Cursor.Current = Cursors.WaitCursor;
            if (dataSourceMap == null)
            {
                return;
            }

            try
            {
                var checkedNodes = TreeViewHandling.GetCheckedNodes(tvReportServerSource.Nodes);

                pbTransfer.Visible = true;
                pbTransfer.Maximum = checkedNodes.Count(node => node.Checked);

                int i = 0;

                foreach (TreeNode checkedNode in checkedNodes.Where(node => node.Checked))
                {
                    try
                    {
                        switch (((ItemTypeEnum)(checkedNode.Tag)))
                        {
                        case ItemTypeEnum.Report:
                            pbTransfer.Value = (i < pbTransfer.Maximum) ? ++i : i;
                            ReportServerDestination.DeployReport(ReportServerSource.ReportsServerInstance,
                                                                 checkedNode.Text,
                                                                 checkedNode.FullPath.Replace(tvReportServerSource.Nodes[0].Text, string.Empty),
                                                                 tvReportServerDestination.SelectedNode.FullPath.Replace(tvReportServerDestination.Nodes[0].Text, string.Empty),
                                                                 dataSourceMap.Name,
                                                                 dataSourceMap.Path);
                            tvReportServerDestination.SelectedNode.Nodes.Add(new TreeNode(checkedNode.Text, 1, 1)
                            {
                                Tag = checkedNode.Tag
                            });
                            break;

                        case ItemTypeEnum.Folder:
                            if (ReportServerDestination.CheckItemExist(ItemTypeEnum.Folder,
                                                                       tvReportServerDestination.SelectedNode.FullPath.Replace(tvReportServerDestination.Nodes[0].Text, string.Empty).Replace(@"\", "/"),
                                                                       checkedNode.Text))
                            {
                                ReportServerDestination.CreateFolder(tvReportServerDestination.SelectedNode.FullPath.Replace(tvReportServerDestination.Nodes[0].Text, string.Empty), checkedNode.Text);
                                tvReportServerDestination.SelectedNode.Nodes.Add(new TreeNode(checkedNode.Text, 0, 0)
                                {
                                    Tag = checkedNode.Tag
                                });
                            }
                            break;
                        }
                    }
                    catch (Exception exception)
                    {
                        MessageBox.Show(exception.Message);
                    }
                }

                tvReportServerDestination.SelectedNode.Expand();
            }
            catch (Exception exception)
            {
                MessageBox.Show(exception.Message);
            }


            pbTransfer.Visible = false;
            Cursor.Current     = Cursors.Arrow;
        }
示例#4
0
 private void tvReportServerSource_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e)
 {
     TreeViewHandling.CheckNodes(e.Node);
 }