2011-08-04 16 views
7

मेरे पास ट्री व्यू पर एक नोड है जो मैं मैन्युअल रूप से पॉप्युलेट करता हूं और सॉर्ट करना चाहता हूं। उपयोगकर्ता इंटरैक्शन के माध्यम से TreeViewItem के शीर्षलेख बदल सकते हैं और उन्हें सूची में उपयुक्त स्थान पर जाना चाहिए।डब्ल्यूपीएफ एक ट्री व्यू सूची को रखते हुए

मैं कई ट्री व्यूइटेम बनाने और उन्हें माता-पिता नोड में जोड़ने के लिए एक प्रस्ताव के माध्यम से पुनरावृत्ति करता हूं। यह उन सभी बच्चों को क्रमबद्ध करने की आवश्यकता है। मैं इसके बाद एक सॉर्ट डिस्क्रिप्शन जोड़ता हूं।

tviParent.Items.SortDescriptions.Add(new SortDescription("Header", ListSortDirection.Ascending)); 

यह आरंभिक सूची सॉर्ट करता, लेकिन अगर मैं ट्री दृश्य वस्तुओं में से एक के लिए शीर्षक परिवर्तित करने के बाद यह आइटम तरह फिर से नहीं प्रदर्शित होता है। हेडर टेक्स्ट बदलता है, लेकिन सूची में आइटम की स्थिति वही रहती है।

क्या मुझे कुछ याद आ रही है?

मैंने सूची को साफ़ करने और इसे दोबारा बनाने की कोशिश की है, जो काम करेगा, हालांकि यह मेरे कार्यक्रम में कुछ संकेतों का कारण बनता है क्योंकि मेरे पास चयनित आइटम बदलते समय बहुत तर्क है और चूंकि पेड़ में से एक आइटम आइटम में से एक है सूची है कि मैं समाशोधन कर रहा हूं चुना गया है जब मैं सूची को साफ़ करता हूं और फिर फिर जब मैं सूची को पुनर्निर्माण के बाद आइटम को प्रोग्रामेटिक रूप से संशोधित करता हूं तो यह सभी तर्कों को आमंत्रित करता है।

उत्तर

12

आइटम संग्रह अपनी संपत्ति

के बाद हैडर संपादित निम्नलिखित कोड की कोशिश करने वाले किसी भी परिवर्तन पर ताज़ा करना होगा ....

tviParent.Items.Refresh(); 

अगर कोड ऊपर तो काम नहीं करता है की कोशिश प्रत्येक संपादन के बाद नीचे कोड ...

tviParent.Items.SortDescriptions.Clear() 
    tviParent.Items.SortDescriptions.Add(new SortDescription("Header", ListSortDirection.Ascending)); 
+0

दूसरा विकल्प काम किया, धन्यवाद। – WPFNewbie

+0

खुशी है कि मैं मदद कर सकता हूं। –

+0

आपके द्वारा प्रदान किया गया दूसरा विकल्प चेकबॉक्स में मेरे वृक्ष दृश्य के लिए काम करता है। धन्यवाद! –

संबंधित मुद्दे