This commit is contained in:
ww-rm
2025-03-23 10:19:50 +08:00
parent 2b39384b28
commit 1dd2c8fb4d

View File

@@ -217,10 +217,10 @@ namespace SpineViewer.Controls
} }
private void listView_SelectedIndexChanged(object sender, EventArgs e) private void listView_SelectedIndexChanged(object sender, EventArgs e)
{
if (PropertyGrid is not null)
{ {
lock (Spines) lock (Spines)
{
if (PropertyGrid is not null)
{ {
if (listView.SelectedIndices.Count <= 0) if (listView.SelectedIndices.Count <= 0)
PropertyGrid.SelectedObject = null; PropertyGrid.SelectedObject = null;
@@ -228,12 +228,12 @@ namespace SpineViewer.Controls
PropertyGrid.SelectedObject = spines[listView.SelectedIndices[0]]; PropertyGrid.SelectedObject = spines[listView.SelectedIndices[0]];
else else
PropertyGrid.SelectedObjects = listView.SelectedIndices.Cast<int>().Select(index => spines[index]).ToArray(); PropertyGrid.SelectedObjects = listView.SelectedIndices.Cast<int>().Select(index => spines[index]).ToArray();
}
// 标记选中的 Spine // 标记选中的 Spine
for (int i = 0; i < spines.Count; i++) for (int i = 0; i < spines.Count; i++)
spines[i].IsSelected = listView.SelectedIndices.Contains(i); spines[i].IsSelected = listView.SelectedIndices.Contains(i);
} }
}
// XXX: 图标显示的时候没法自动刷新顺序, 只能切换视图刷新, 不知道什么原理 // XXX: 图标显示的时候没法自动刷新顺序, 只能切换视图刷新, 不知道什么原理
if (listView.View == View.LargeIcon) if (listView.View == View.LargeIcon)