diff --git a/ILSpy/TreeNodes/NaturalStringComparer.cs b/ILSpy/TreeNodes/NaturalStringComparer.cs index 5c9d5e0b7..177141260 100644 --- a/ILSpy/TreeNodes/NaturalStringComparer.cs +++ b/ILSpy/TreeNodes/NaturalStringComparer.cs @@ -16,7 +16,6 @@ // OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER // DEALINGS IN THE SOFTWARE. -using System; using System.Collections.Generic; using System.Runtime.InteropServices; diff --git a/ILSpy/TreeNodes/ResourceListTreeNode.cs b/ILSpy/TreeNodes/ResourceListTreeNode.cs index 2a8cacc30..9f14a03c3 100644 --- a/ILSpy/TreeNodes/ResourceListTreeNode.cs +++ b/ILSpy/TreeNodes/ResourceListTreeNode.cs @@ -51,7 +51,7 @@ namespace ICSharpCode.ILSpy.TreeNodes protected override void LoadChildren() { - foreach (Resource r in module.Resources.OrderBy(m => m.Name)) + foreach (Resource r in module.Resources.OrderBy(m => m.Name, NaturalStringComparer.Instance)) this.Children.Add(ResourceTreeNode.Create(r)); } diff --git a/ILSpy/TreeNodes/ResourceNodes/ResourcesFileTreeNode.cs b/ILSpy/TreeNodes/ResourceNodes/ResourcesFileTreeNode.cs index 264299f45..41cea89fc 100644 --- a/ILSpy/TreeNodes/ResourceNodes/ResourcesFileTreeNode.cs +++ b/ILSpy/TreeNodes/ResourceNodes/ResourcesFileTreeNode.cs @@ -21,6 +21,7 @@ using System.Collections.Generic; using System.Collections.ObjectModel; using System.ComponentModel.Composition; using System.IO; +using System.Linq; using ICSharpCode.Decompiler; using ICSharpCode.Decompiler.Util; using ICSharpCode.Decompiler.Metadata; @@ -68,7 +69,7 @@ namespace ICSharpCode.ILSpy.TreeNodes if (s == null) return; s.Position = 0; try { - foreach (var entry in new ResourcesFile(s)) { + foreach (var entry in new ResourcesFile(s).OrderBy(e => e.Key, NaturalStringComparer.Instance)) { ProcessResourceEntry(entry); } } catch (BadImageFormatException) { @@ -78,7 +79,7 @@ namespace ICSharpCode.ILSpy.TreeNodes private void ProcessResourceEntry(KeyValuePair entry) { - if (entry.Value is String) { + if (entry.Value is string) { stringTableEntries.Add(new KeyValuePair(entry.Key, (string)entry.Value)); return; }