मेरे पास Layers
की एक सूची है जो TreeView
पर बाध्य है जहां प्रत्येक उदाहरण में Effects
की एक सूची है। मैं उन्हें एक पदानुक्रमित डेटाटाम्प्लेट के माध्यम से दिखाता हूं जो बहुत अच्छा काम करता है लेकिन मैं उन्हें SortDescriptions
का उपयोग करके सॉर्ट करने का प्रयास कर रहा हूं।Xaml में SortDescriptions का उपयोग करके TreeView आइटम को कैसे क्रमबद्ध करें?
मैं कैसे XAML में ऐसा करने के लिए पता नहीं है, लेकिन ऐसा करने से वस्तुओं के केवल प्रथम स्तर, नहीं उप आइटम सॉर्ट करता: द्वारा
ICollectionView view = CollectionViewSource.GetDefaultView (treeView1.ItemsSource);
view.SortDescriptions.Add (new SortDescription ("Name", ListSortDirection.Ascending));
मैं उन्हें .Color
से पहले सॉर्ट करने के लिए कोशिश कर रहा हूँ, तो .Name
।
कोई विचार?
संपादित करें: मैं इस कोड कहा:
<Window.Resources>
<CollectionViewSource x:Key="SortedLayers" Source="{Binding AllLayers}">
<CollectionViewSource.SortDescriptions>
<scm:SortDescription PropertyName="Color" />
<scm:SortDescription PropertyName="Name" />
</CollectionViewSource.SortDescriptions>
</CollectionViewSource>
</Window.Resources>
लेकिन यह अभी भी केवल पदानुक्रम के पहले के स्तर के लिए यह करता है। मैं इसे प्रत्येक परत के लिए कैसे निर्दिष्ट कर सकता हूं। प्रभाव संग्रह?
बस एक बहुत छोटे से सुधार, मान परिवर्तित System.Collections.IList (System.Collections.IList) मान को शून्य संदर्भ को छोड़ने से बचने के लिए यदि मूल्य एक आईएलआईस्ट नहीं है (आपके पास अमान्यकास्ट अपवाद होना चाहिए) –