Esempio n. 1
0
 private void tsbDownload_Click(object sender, EventArgs e)
 {
     ListView.SelectedListViewItemCollection lstSelected = LvDataContent.SelectedItems;
     if (lstSelected.Count > 0)
     {
         foreach (ListViewItem item in lstSelected)
         {
             ListViewItemEx ctr = item as ListViewItemEx;
             if (!ctr.ItemData.IsForlder)
             {
                 ctr.DownLoadFile();
             }
         }
     }
 }
Esempio n. 2
0
        private void tsbUpload_Click(object sender, EventArgs e)
        {
            OpenFileDialog dialog = new OpenFileDialog();

            dialog.Filter      = "所有文件|*.*";
            dialog.Multiselect = true;
            if (dialog.ShowDialog() == DialogResult.OK)
            {
                LvDataContent.ListViewItemSorter = new ListViewIndexComparer();
                Array.ForEach(dialog.FileNames, t =>
                {
                    ListViewItemEx ctr       = new ListViewItemEx(_baseInfoId);
                    ctr.Text                 = Path.GetFileName(t);
                    string tempFileExtension = Path.GetExtension(t);
                    LvDataContent.Items.Add(ctr);
                    ctr.UploadFile(t, _currentId, imageList1);
                });
                //tsmNameSort_Click(tsmNameSort, e);
            }
        }
Esempio n. 3
0
 private void UpdateViewItem(TDataInfoDTO dto, ListViewItemEx lvi)
 {
     lvi.Text     = dto.DataName;
     lvi.ItemData = dto;
     if (dto.IsForlder == false)
     {
         string tempFileExtension = Path.GetExtension(dto.DataName);
         lvi.ImageIndex  = CommomHelper.GetImageIndex(dto, imageList1);
         lvi.ToolTipText = string.Format("文件名称:{0}\r\n文件大小:{1}M\r\n上传时间:{2}\r\n上传人:{3}\r\n修改时间:{4}\r\n下载次数:{5}\r\n文件描述:{6}", dto.DataName, CommomHelper.ParseMB(dto.FileSize), dto.CreateTime, dto.UploadPeople, dto.LastModifyTime, dto.DownloadTimes, dto.DataDescription);
     }
     else
     {
         if (!imageList1.Images.Keys.Contains("Folder"))
         {
             imageList1.Images.Add("Folder", Resources.folder);
         }
         lvi.ImageIndex = imageList1.Images.Keys.IndexOf("Folder");
         string.Format("文件名称:{0}\r\n上传时间:{1}\r\n上传人:{2}\r\n修改时间:{3}\r\n文件描述:{4}", dto.DataName, dto.CreateTime, dto.UploadPeople, dto.LastModifyTime, dto.DataDescription);
     }
 }
Esempio n. 4
0
        public int Compare(object x, object y)
        {
            ListViewItemEx y1 = (ListViewItemEx)x;
            ListViewItemEx x1 = (ListViewItemEx)y;

            if (x1.ItemData == null || y1.ItemData == null)
            {
                return(1);
            }
            if (x1.ItemData.IsForlder)
            {
                return(-1);
            }
            else if (y1.ItemData.IsForlder)
            {
                return(1);
            }
            else
            {
                return((int)(CommomHelper.ParseMB(x1.ItemData.FileSize) - CommomHelper.ParseMB(y1.ItemData.FileSize)));
            }
        }
Esempio n. 5
0
        public int Compare(object x, object y)
        {
            ListViewItemEx y1 = (ListViewItemEx)x;
            ListViewItemEx x1 = (ListViewItemEx)y;

            if (x1.ItemData == null || y1.ItemData == null)
            {
                return(1);
            }
            if (x1.ItemData.IsForlder)
            {
                return(-1);
            }
            else if (y1.ItemData.IsForlder)
            {
                return(1);
            }
            else
            {
                return(DateTime.Compare(x1.ItemData.LastModifyTime.Value, y1.ItemData.LastModifyTime.Value));
            }
        }
Esempio n. 6
0
        public int Compare(object x, object y)
        {
            ListViewItemEx y1 = (ListViewItemEx)x;
            ListViewItemEx x1 = (ListViewItemEx)y;

            if (x1.ItemData == null || y1.ItemData == null)
            {
                return(1);
            }
            if (x1.ItemData.IsForlder)
            {
                return(-1);
            }
            else if (y1.ItemData.IsForlder)
            {
                return(1);
            }
            else
            {
                return(string.CompareOrdinal(Path.GetExtension(x1.ItemData.DataName).Remove(0, 1), Path.GetExtension(y1.ItemData.DataName).Remove(0, 1)));
            }
        }
Esempio n. 7
0
        public int Compare(object x, object y)
        {
            ListViewItemEx y1 = (ListViewItemEx)x;
            ListViewItemEx x1 = (ListViewItemEx)y;

            if (x1.ItemData == null || y1.ItemData == null)
            {
                return(1);
            }
            if (x1.ItemData.IsForlder)
            {
                return(-1);
            }
            else if (y1.ItemData.IsForlder)
            {
                return(1);
            }
            else
            {
                return(string.CompareOrdinal(x1.ItemData.DataName, y1.ItemData.DataName));
            }
        }
Esempio n. 8
0
        private void tsbUploadForlder_Click(object sender, EventArgs e)
        {
            FolderBrowserDialog dialog = new FolderBrowserDialog();

            //dialog.RootFolder = Environment.SpecialFolder.MyComputer;
            if (dialog.ShowDialog() == DialogResult.OK)
            {
                string folderPath = dialog.SelectedPath;
                string folderName = folderPath.Remove(0, folderPath.LastIndexOf("\\") + 1);
                //新建文件夹
                TDataInfoDTO dto = new TDataInfoDTO();
                dto.BaseInfoId     = _baseInfoId;
                dto.CreateTime     = DateTime.Now;
                dto.DataName       = folderName;
                dto.UploadPeople   = CommonData.LoginInfo.EmployeeName;
                dto.IsForlder      = true;
                dto.DownloadTimes  = 0;
                dto.LastModifyTime = DateTime.Now;
                dto.MetaDataId     = Guid.NewGuid().ToString();
                dto.ParentId       = _currentId;
                bool result = _client.TDataInfoAdd(dto);
                if (result)
                {
                    CreateViewItem(dto, LvDataContent.Items.Count, false);
                    IniliazeListView(dto.MetaDataId);
                    //开始上传文件

                    Array.ForEach(Directory.GetFiles(folderPath), t =>
                    {
                        ListViewItemEx ctr       = new ListViewItemEx(_baseInfoId);
                        ctr.Text                 = Path.GetFileName(t);
                        string tempFileExtension = Path.GetExtension(t);
                        LvDataContent.Items.Add(ctr);
                        ctr.UploadFile(t, _currentId, imageList1);
                    });
                    //LvDataContent.Items[LvDataContent.Items.Count - 1].BeginEdit();
                }
            }
        }
Esempio n. 9
0
        private void CreateViewItem(TDataInfoDTO dto, int index, bool edit = false)
        {
            ListViewItemEx lvi = new ListViewItemEx();

            lvi.ItemData = dto;
            lvi.Text     = dto.DataName;
            if (dto.IsForlder == false)
            {
                lvi.ImageIndex  = CommomHelper.GetImageIndex(dto, imageList1);
                lvi.ToolTipText = string.Format("文件名称:{0}\r\n文件大小:{1}M\r\n上传时间:{2}\r\n上传人:{3}\r\n修改时间:{4}\r\n下载次数:{5}\r\n文件描述:{6}", dto.DataName, CommomHelper.ParseMB(dto.FileSize), dto.CreateTime, dto.UploadPeople, dto.LastModifyTime, dto.DownloadTimes, dto.DataDescription);
                lvi.SubItems.Add(dto.DataName);
                lvi.SubItems.Add(CommomHelper.ParseMB(dto.FileSize) + "M");
                lvi.SubItems.Add(dto.LastModifyTime.Value.ToString());
                lvi.SubItems.Add(dto.UploadPeople);
                LvDataContent.Items.Insert(index, lvi);
                //lvi.SetOtherControl();
            }
            else
            {
                if (!imageList1.Images.Keys.Contains("Folder"))
                {
                    imageList1.Images.Add("Folder", Resources.folder);
                }
                lvi.ImageIndex = imageList1.Images.Keys.IndexOf("Folder");
                string.Format("文件名称:{0}\r\n上传时间:{1}\r\n上传人:{2}\r\n修改时间:{3}\r\n文件描述:{4}", dto.DataName, dto.CreateTime, dto.UploadPeople, dto.LastModifyTime, dto.DataDescription);
                lvi.SubItems.Add(dto.DataName);
                lvi.SubItems.Add(CommomHelper.ParseMB(dto.FileSize) + "M");
                lvi.SubItems.Add(dto.LastModifyTime.Value.ToString());
                lvi.SubItems.Add(dto.UploadPeople);
                LvDataContent.Items.Insert(index, lvi);
            }
            if (edit)
            {
                lvi.BeginEdit();
            }
        }
Esempio n. 10
0
        /// <summary>
        /// 结束拖动
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void listView1_DragDrop(object sender, DragEventArgs e)
        {
            // 返回插入标记的索引值
            int index = LvDataContent.InsertionMark.Index;

            // 如果插入标记不可见,则退出.
            if (index == -1)
            {
                return;
            }
            // 如果插入标记在项目的右面,使目标索引值加一
            if (LvDataContent.InsertionMark.AppearsAfterItem && index < LvDataContent.Items.Count - 1 && (LvDataContent.Items[index] as ListViewItemEx).ItemData.IsForlder == false)
            {
                index++;
            }
            ListViewItemEx target = LvDataContent.Items[index] as ListViewItemEx;

            //移动项
            if (e.Effect == DragDropEffects.Move)
            {
                // 返回拖拽项
                Dictionary <ListViewItemEx, int> items = (Dictionary <ListViewItemEx, int>)e.Data.GetData(typeof(Dictionary <ListViewItemEx, int>));
                foreach (var item in items)
                {
                    if (target.ItemData.IsForlder == false)
                    {
                        CreateViewItem(item.Key.ItemData, index);
                        LvDataContent.Items.Remove(item.Key);
                        if (item.Value >= index)
                        {
                            index++;
                        }
                    }
                    else
                    {
                        TDataInfoDTO sourceDTO = item.Key.ItemData;
                        sourceDTO.ParentId = target.ItemData.MetaDataId;
                        bool success = _client.TDataInfoUpdate(sourceDTO);
                        if (success)
                        {
                            LvDataContent.Items.Remove(item.Key);
                        }
                    }
                }
            }
            else if (e.Effect == (DragDropEffects.Copy | DragDropEffects.Link | DragDropEffects.Move))
            {
                if (target.ItemData.IsForlder)
                {
                    IniliazeListView(target.ItemData.MetaDataId);
                }
                //上传文件
                string[] result = e.Data.GetData(DataFormats.FileDrop) as string[];
                LvDataContent.ListViewItemSorter = new ListViewIndexComparer();
                Array.ForEach(result, t =>
                {
                    ListViewItemEx ctr       = new ListViewItemEx(_baseInfoId);
                    ctr.Text                 = Path.GetFileName(t);
                    string tempFileExtension = Path.GetExtension(t);
                    LvDataContent.Items.Add(ctr);
                    ctr.UploadFile(t, _currentId, imageList1);
                });
            }
        }