/// <summary> /// Gets all the metadata entries sorted by importance /// </summary> public IEnumerable <KeyValuePair <string, string> > GetMetadataEntriesOrderedByImportance() { if (FullName != null) { yield return(MakePair("Full Name", FullName)); } if (StrongName != null) { yield return(MakePair("Strong Name", StrongName)); } foreach (var entry in MetadataEntries.OrderBy(kv => kv.Key)) { yield return(entry); } if (ReferencedAsseblies != null) { var assemblyNamesDelimitedByLineBreak = string.Join( Environment.NewLine, ReferencedAsseblies .OrderBy(assName => assName.Name) .Select(assName => assName.FullName)); yield return(MakePair("Referenced assemblies", assemblyNamesDelimitedByLineBreak)); } }
/// <summary> /// Deletes a metadata entry from the list. /// </summary> /// <param name="item">Item to delete.</param> private void DeleteMetadataField(MetadataEntry item) { MetadataEntries.Remove(item); if (MetadataEntries.Count < 5) { AddMetadataFieldsBtnEnabled = true; } }
/// <summary> /// Adds a new metadata field to the list. /// </summary> /// <returns></returns> private async Task AddMetadataField() { // Waits for the user to fill in a popup form describing the metadata field. var result = await DetailFormFieldPopup.GetResultAsync(); if (result != null) { MetadataEntries.Add(result); // Maximum of 5 metadata entries. if (MetadataEntries.Count == 5) { AddMetadataFieldsBtnEnabled = false; } } }