2012-09-16 7 views
5

ListView में कुछ समूह को छुपा या पतन कैसे कर सकता हूं?ListView चयनित समूह को छिपाएं या संक्षिप्त करें

मैं बस कुछ

contactListView.Items.Add(new ISIMlistViewItem(contact)); 
if (contact.availability == 6) 
    contactListView.Items[contact.identificator].Group = contactListView.Groups["offlineGroup"]; 
else 
    contactListView.Items[contact.identificator].Group = contactListView.Groups["onlineGroup"]; 

आइटम जोड़ने और मैं कभी कभी offlineGroup छुपाना चाहते हैं।

if (hideOffline == true) 
{ 
    // something like 
    contactListView.Groups["offlineGroup"].Hide(); 
    // or 
    contactListView.Groups["offlineGroup"].Visible = false; 
} 

लेकिन मुझे नहीं पता कि मैं यह कैसे कर सकता हूं। क्या मैं इसे अभी संकुचित कर सकता हूं और इसे आकर्षित नहीं कर सकता हूं या इसे छिपाने की कोई संभावना है?

+0

http://typecastexception.com/post/2012/05/09/Extending-C-Listview-with-Collapsible-Groups-%28Part-I%29.aspx – Nasreddine

उत्तर

4

ऐसा लगता है कि ListViewGroup class का .NET संस्करण Collapse या Expand विधि प्रदान नहीं करता है।

सौभाग्य से, देशी ListView नियंत्रण इसे समर्थन करता है और एक पुरुष an extension to enable expand and collapse प्रदान की है।

अपने कोड का उपयोग करके आप तो साथ विस्तृत/संक्षिप्त राज्य स्थापित करने के लिए एक समारोह हो सकता है:

private void SetGroupCollapse(GroupState state) 

एक पूरा समूह मैं बस इस समूह में सभी आइटम निकालने होगा छुपा के लिए।

+3

मेरे पास एक ही विचार है। लेकिन हालांकि मैं बस किसी भी समूह को छिपा सकता हूं और इसे फिर से दिखा सकता हूं। मुझे समूह को छिपाने के लिए एक समूह से वस्तुओं को कुछ अस्थायी स्थान पर ले जाना पसंद नहीं है और फिर समूह को दिखाने के लिए वापस जाना पसंद नहीं है। मुझे लगता है कि मैं पतन विस्तार का उपयोग करूंगा। – sczdavos

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