목록에서 채울 목록 상자가 있습니다. 문자열은 다른 목록에있는 객체의 속성입니다. 목록에서 무언가를 선택할 때, 나는 관련 객체를 선택하기 위해 인덱스를 사용합니다 (물론리스트에서 그 인덱스와 같은 인덱스를가집니다). 그러나 목록을 (이름으로) 정렬 할 때 각 문자열의 색인이 변경되므로 갑자기 잘못된 개체와 관련이 있습니다.인덱스를 변경하지 않고 목록 상자를 정렬하는 방법
내 질문에, 인덱스를 변경하지 않고 목록을 정렬 할 가능성이 있습니다.
for(int i = 0; i < myObjects.Count; i++)
{
var lItem = new ListBoxItem();
lItem.Tag = myObjects[i];
// do some other things...
}
을 그래서 나중에이 수행 할 수 있습니다 : 당신이 경우
ListBoxItem li = // again the selected item
MyObject obj = li.Tag as MyObject;
을