2010-06-30 5 views
2

정렬 된 문자열 목록을 바인딩하는 ListBox가 있습니다. 새로운 편지를 발표하는 분배기 (헤더)로 목록을 표시하고 싶습니다. iPhone의 'Contacts'목록과 같습니다.Silverlight에서 첫 글자로 항목을 그룹화하는 방법은 무엇입니까?

아무도이 목표를 달성하는 방법을 알고 있습니까? 아마도 ListBox를 사용하는 것이 올바른 생각이 아닙니다. 나는 Windows Phone 용 VS 익스프레스 2010과 함께이 일을하고

7

답변

7
내가 실버에 대해 말할 수

하지만 같은 것이 일반적인 .NET 연습은 다음과 같습니다

var groupings = mySortedString.GroupBy(x => x.Substring(0,1)); 

이가한다 IEnumerable<IGrouping<string, string>> 그러면이 목록을 목록 상자에 바인딩합니다.

여기에서 XAML을 사용하여 원하는 방식으로 표현해야하지만 모든 항목이 그룹화됩니다.

참고 : IGrouping<,>IEnumerable<>을 구현하므로 항목에 대해 열거 할 수 있습니다.

+0

감사합니다. 나는 곧 이것을 시도 할 것이다. – Alisa

0

나는이 작업을 수행하는 실버 WP7 툴킷의 LongListSelector를 사용합니다. 그것은 당신의 머리를 둥글게하는 것이 혼란 스러울 수 있습니다. 어떻게 작동합니까? 나는 확실히 그랬습니다! 그래서 여기에 적합한 중첩 그룹을 만드는 방법에 대한 블로그를 작성했습니다. 그러나 그룹 단축키 연결이없는 단순한 목록이라면 일반 모음에 바인딩하여 곧은 목록으로 사용할 수 있습니다.

http://nicholasrogoff.wordpress.com/2011/01/28/creating-an-easy-grouped-observablecollection-for-the-longlistselector/

관련 문제