void ClearDownloadButtonCommandExecute(object parameter) { if (parameter != null) { DownloadsList.RemoveAllOnCondition(item => item.State == DownloadState.DownloadCompleted || item.State == DownloadState.DownloadCancelled || item.State == DownloadState.DownloadError); } }
/// <summary> /// Binds the data. /// </summary> private void BindData() { if (DataSource == null) { this.Visible = false; return; } List <ItemAsset> assets = new List <ItemAsset>(); if (!String.IsNullOrEmpty(GroupName)) { foreach (ItemAsset asset in DataSource) { if (asset.GroupName.Equals(GroupName)) { assets.Add(asset); } } } else { foreach (ItemAsset asset in DataSource) { assets.Add(asset); } } this.Visible = true; List <FolderElement> elements = new List <FolderElement>(); foreach (ItemAsset asset in assets) { if (asset.AssetType.Equals("file")) { FolderElement[] myElements = FolderElement.List <FolderElement>(FolderElement.GetAssignedMetaClass(), new FilterElement[] { new FilterElement("FolderElementId", FilterElementType.Equal, asset.AssetKey) }); if (myElements.Length > 0) { elements.Add(myElements[0]); } } else { FolderElement[] myElements = FolderElement.List <FolderElement>(FolderElement.GetAssignedMetaClass(), new FilterElement[] { new FilterElement("ParentId", FilterElementType.Equal, asset.AssetKey) }); if (myElements.Length > 0) { foreach (FolderElement myElement in myElements) { elements.Add(myElement); } } } } DataTable table = new DataTable(); table.Columns.Add(new DataColumn("ID", typeof(string))); table.Columns.Add(new DataColumn("Name", typeof(string))); table.Columns.Add(new DataColumn("Size", typeof(string))); table.Columns.Add(new DataColumn("Url", typeof(string))); table.Columns.Add(new DataColumn("Filename", typeof(string))); table.Columns.Add(new DataColumn("Icon", typeof(string))); table.Columns.Add(new DataColumn("Created", typeof(DateTime))); foreach (FolderElement element in elements) { DataRow newRow = table.NewRow(); newRow["ID"] = element.PrimaryKeyId.ToString(); newRow["Name"] = element.Name; BlobStorageProvider prov = BlobStorage.Providers[element.BlobStorageProvider]; BlobInfo info = prov.GetInfo(new Guid(element.BlobUid.ToString())); newRow["FileName"] = info.FileName; newRow["Url"] = String.Format("~{0}", element.GetUrl()); //DownloadFileUrlBuilder.GetUrl("iis", info); newRow["Icon"] = CommonHelper.GetIcon(info.FileName); newRow["Created"] = info.Created; newRow["Size"] = CommerceHelper.ByteSizeToStr(info.ContentSize); table.Rows.Add(newRow); } DownloadsList.DataSource = table; DownloadsList.DataBind(); }