/// <summary> /// GFS系统 /// </summary> /// <param name="dataList"></param> /// <param name="lstData"></param> private static void SetGridFileToListView(List <BsonDocument> dataList, ListView lstData) { lstData.Clear(); if (!SystemManager.IsUseDefaultLanguage) { lstData.Columns.Add(SystemManager.mStringResource.GetText(StringResource.TextType.GFS_filename)); lstData.Columns.Add(SystemManager.mStringResource.GetText(StringResource.TextType.GFS_length)); lstData.Columns.Add(SystemManager.mStringResource.GetText(StringResource.TextType.GFS_chunkSize)); lstData.Columns.Add(SystemManager.mStringResource.GetText(StringResource.TextType.GFS_uploadDate)); lstData.Columns.Add(SystemManager.mStringResource.GetText(StringResource.TextType.GFS_md5)); if (!SystemManager.MONO_MODE) { lstData.Columns.Add("ContentType"); } } else { lstData.Columns.Add("filename"); lstData.Columns.Add("length"); lstData.Columns.Add("chunkSize"); lstData.Columns.Add("uploadDate"); lstData.Columns.Add("MD5"); if (!SystemManager.MONO_MODE) { lstData.Columns.Add("ContentType"); } } lstData.SmallImageList = GetSystemIcon.IconImagelist; lstData.LargeImageList = GetSystemIcon.IconImagelist; lstData.TileSize = new Size(200, 100); foreach (BsonDocument docFile in dataList) { String Filename = docFile.GetValue("filename").ToString(); ListViewItem lstItem = new ListViewItem(); lstItem.ImageIndex = GetSystemIcon.GetIconIndexByFileName(Filename, false); lstItem.Text = Filename; lstItem.ToolTipText = Filename; lstItem.SubItems.Add(GetSize(docFile.GetValue("length"))); lstItem.SubItems.Add(GetSize(docFile.GetValue("chunkSize"))); lstItem.SubItems.Add(ConvertToString(docFile.GetValue("uploadDate"))); lstItem.SubItems.Add(ConvertToString(docFile.GetValue("md5"))); if (!SystemManager.MONO_MODE) { lstItem.SubItems.Add(GetSystemIcon.GetContentType(Filename)); } lstData.Items.Add(lstItem); } // 用新的排序方法对ListView排序 MongoDBHelper.lvwColumnSorter _lvwGFSColumnSorter = new MongoDBHelper.lvwColumnSorter(); lstData.ListViewItemSorter = _lvwGFSColumnSorter; lstData.ColumnClick += new ColumnClickEventHandler( (sender, e) => { switch (e.Column) { case 1: case 2: _lvwGFSColumnSorter.CompareMethod = MongoDBHelper.lvwColumnSorter.SortMethod.SizeCompare; break; default: _lvwGFSColumnSorter.CompareMethod = MongoDBHelper.lvwColumnSorter.SortMethod.StringCompare; break; } // 检查点击的列是不是现在的排序列. if (e.Column == _lvwGFSColumnSorter.SortColumn) { // 重新设置此列的排序方法. if (_lvwGFSColumnSorter.Order == SortOrder.Ascending) { _lvwGFSColumnSorter.Order = SortOrder.Descending; } else { _lvwGFSColumnSorter.Order = SortOrder.Ascending; } } else { // 设置排序列,默认为正向排序 _lvwGFSColumnSorter.SortColumn = e.Column; _lvwGFSColumnSorter.Order = SortOrder.Ascending; } lstData.Sort(); } ); }
/// <summary> /// GFS系统 /// </summary> /// <param name="dataList"></param> /// <param name="lstData"></param> private static void SetGridFileToListView(List<BsonDocument> dataList, ListView lstData) { lstData.Clear(); if (!SystemManager.IsUseDefaultLanguage) { lstData.Columns.Add(SystemManager.mStringResource.GetText(StringResource.TextType.GFS_filename)); lstData.Columns.Add(SystemManager.mStringResource.GetText(StringResource.TextType.GFS_length)); lstData.Columns.Add(SystemManager.mStringResource.GetText(StringResource.TextType.GFS_chunkSize)); lstData.Columns.Add(SystemManager.mStringResource.GetText(StringResource.TextType.GFS_uploadDate)); lstData.Columns.Add(SystemManager.mStringResource.GetText(StringResource.TextType.GFS_md5)); if (!SystemManager.MONO_MODE) { lstData.Columns.Add("ContentType"); } } else { lstData.Columns.Add("filename"); lstData.Columns.Add("length"); lstData.Columns.Add("chunkSize"); lstData.Columns.Add("uploadDate"); lstData.Columns.Add("MD5"); if (!SystemManager.MONO_MODE) { lstData.Columns.Add("ContentType"); } } lstData.SmallImageList = GetSystemIcon.IconImagelist; lstData.LargeImageList = GetSystemIcon.IconImagelist; lstData.TileSize = new Size(200, 100); foreach (BsonDocument docFile in dataList) { String Filename = docFile.GetValue("filename").ToString(); ListViewItem lstItem = new ListViewItem(); lstItem.ImageIndex = GetSystemIcon.GetIconIndexByFileName(Filename, false); lstItem.Text = Filename; lstItem.ToolTipText = Filename; lstItem.SubItems.Add(GetSize(docFile.GetValue("length"))); lstItem.SubItems.Add(GetSize(docFile.GetValue("chunkSize"))); lstItem.SubItems.Add(ConvertToString(docFile.GetValue("uploadDate"))); lstItem.SubItems.Add(ConvertToString(docFile.GetValue("md5"))); if (!SystemManager.MONO_MODE) { lstItem.SubItems.Add(GetSystemIcon.GetContentType(Filename)); } lstData.Items.Add(lstItem); } // 用新的排序方法对ListView排序 MongoDBHelper.lvwColumnSorter _lvwGFSColumnSorter = new MongoDBHelper.lvwColumnSorter(); lstData.ListViewItemSorter = _lvwGFSColumnSorter; lstData.ColumnClick += new ColumnClickEventHandler( (sender, e) => { switch (e.Column) { case 1: case 2: _lvwGFSColumnSorter.CompareMethod = MongoDBHelper.lvwColumnSorter.SortMethod.SizeCompare; break; default: _lvwGFSColumnSorter.CompareMethod = MongoDBHelper.lvwColumnSorter.SortMethod.StringCompare; break; } // 检查点击的列是不是现在的排序列. if (e.Column == _lvwGFSColumnSorter.SortColumn) { // 重新设置此列的排序方法. if (_lvwGFSColumnSorter.Order == SortOrder.Ascending) { _lvwGFSColumnSorter.Order = SortOrder.Descending; } else { _lvwGFSColumnSorter.Order = SortOrder.Ascending; } } else { // 设置排序列,默认为正向排序 _lvwGFSColumnSorter.SortColumn = e.Column; _lvwGFSColumnSorter.Order = SortOrder.Ascending; } lstData.Sort(); } ); }