public LocaleStrings() { Application.Current.Dispatcher.Invoke(() => { var window = new LocaleStringsWindow(); window.Title = $"Viewing LocaleStrings: {Trb._fileName}"; int i = 0; foreach (var info in Trb.Tsfl.Relc.StructInfos) { Trb.SectFile.BaseStream.Seek(info.Offset, SeekOrigin.Begin); uint stringOffset = Trb.SectFile.ReadUInt32(); Trb.SectFile.BaseStream.Seek(stringOffset, SeekOrigin.Begin); string text = ReadHelper.ReadUnicodeString(Trb.SectFile); ListViewItem item = new ListViewItem { Content = text }; item.Tag = new LocaleString { id = i++, pointer = info.Offset, offset = stringOffset, text = text }; window.ListView.Items.Add(item); } window.ListView.Items.RemoveAt(window.ListView.Items.Count - 1); window.Show(); }); }