मेरे पास एक डब्ल्यूपीएफ डाटाग्रिड है जिसमें संग्रह दृश्य स्रोत है जिसमें समूह के 3 स्तर हैं।सभी सामग्री ध्वस्त होने पर छुपाएं
मैं datagrid 3 विस्तारक ऐसी है कि वह इस तरह दिखता है उपयोग करने के लिए स्टाइल है:
Level 1 Expander
<content>
Level 2 Expander
<content>
Level 3 Expander
<content>
स्तर 2 और स्तर 1 बस समूहों का खिताब हैं
मैं एक दूसरे नियंत्रण है कि अनुमति देता है उपयोगकर्ता 3 स्तरों को दिखाने और छिपाने के लिए जो ऑब्जेक्ट में एक बूलियन "IsVisible" संपत्ति को स्तर 3 विस्तारक को बाध्य करके काम करता है।
<!-- Style for groups under the top level. this is the style for how a sample is displayed -->
<GroupStyle>
<GroupStyle.ContainerStyle>
<Style TargetType="{x:Type GroupItem}">
<Setter Property="Margin" Value="0,0,0,0" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type GroupItem}">
<!-- The parent control that determines whether or not an item needs to be displayed. This holds all of the sub controls displayed for a sample -->
<Expander Margin="2"
Background="{Binding Path=Name,
Converter={StaticResource SampleTypeToColourConverter}}"
IsExpanded="True"
Visibility="{Binding Path=Items[0].IsVisibleInMainScreen,
Converter={StaticResource BoolToVisibilityConverter}}">
यह दृष्टिकोण fantasically अच्छी तरह से काम करता है।
हालांकि
उपयोगकर्ता एक स्तर 3 विस्तारक में सभी आइटम deselects हैं, स्तर 2 विस्तारक हेडर अभी भी अर्थ प्रदर्शित करता है मूल्यवान अचल संपत्ति नहीं दिखाई डेटा के साथ एक समूह के शीर्षक दिखा ऊपर प्रयोग किया जाता है।
क्या मैं चाहते हैं अपने बच्चे को नियंत्रण करने के लिए स्तर 2 विस्तारक की दृश्यता को बाध्य करने और कहने के लिए एक रास्ता है "सभी बच्चों को दिखाई दे रहे हैं तो विस्तारक दिखाते हैं, अन्यथा यह पतन"
यह संभव है?
* यदि सभी बच्चे दिखाई दे रहे हैं तो विस्तारक दिखाएं, अन्यथा इसे संकुचित करें * कनवर्टर कार्य की तरह लगता है। आपके पास पहले से ही संपत्ति है 'IsVisibleInMainWindow', बच्चों को ध्वस्त होने पर इसे बदलें। नोट: 'आइटम' 'पर्यवेक्षण चयन 'होना चाहिए। – Sinatr
क्या आप हमें सभी विस्तारक समेत एक पूर्ण पूर्ण xaml दे सकते हैं? –
मुझे लगता है कि हमें और अधिक xaml की आवश्यकता है। – PScr