2012-08-06 9 views
5

में समूह शैली का चयन करें मैं विंडोज 8 के लिए एक ऐप मेट्रो विकसित कर रहा हूं। मैं ग्रिडएप (xaml) प्रोजेक्ट का उपयोग करता हूं, लेकिन मैं प्रत्येक सेक्शन में विभिन्न समूह शैली का उपयोग करना चाहता हूं।ग्रिडव्यू

मेरे कोड है:

public class GroupTemplateSelector : GroupStyleSelector 
{ 

    public GroupStyle NewsItemGroupStyle { get; set; } 
    public GroupStyle NormalGroupStyle { get; set; } 

    protected override GroupStyle SelectGroupStyleCore(object group, uint level) 
    { 
     // a method that tries to grab an enum off the bound data object 

     if (level == 3) 
     { 
      return NewsItemGroupStyle; 
     } 
     else 
     { 
      return NormalGroupStyle; 
     } 

     throw new ArgumentException("Unexpected group type"); 

    } 
} 

मैं समूह शैली चयनकर्ता को इस वर्ग का उपयोग करें और XAML

<!-- NewsItemGroupStyle --> 
<GroupStyle x:Key="NewsItemGroupStyle"> 
    <GroupStyle.HeaderTemplate> 
     <DataTemplate> 
     </DataTemplate> 
    </GroupStyle.HeaderTemplate> 
    <GroupStyle.Panel> 
     <ItemsPanelTemplate> 
      <StackPanel Orientation="Vertical" Margin="0,0,80,0" VerticalAlignment="Bottom"/> 
     </ItemsPanelTemplate> 
    </GroupStyle.Panel> 
</GroupStyle> 


<!-- NormalItemGroupStyle --> 
<GroupStyle x:Key="NormalGroupStyle"> 
    <GroupStyle.HeaderTemplate> 
     <DataTemplate> 
      <Grid Margin="1,0,0,6"> 
       <Button 
        AutomationProperties.Name="Group Title" 
        Content="{Binding Title}" 
        Background="Blue" 
        Click="Header_Click" 
        Style="{StaticResource TextButtonStyle}" 
        /> 
      </Grid> 
     </DataTemplate> 
    </GroupStyle.HeaderTemplate> 
    <GroupStyle.Panel> 
     <ItemsPanelTemplate> 
      <VariableSizedWrapGrid Orientation="Vertical" Margin="0,0,80,0"/> 
     </ItemsPanelTemplate> 
    </GroupStyle.Panel> 
</GroupStyle> 

<!-- selector --> 
<common:GroupTemplateSelector 
    x:Key="groupSelector" 
    NewsItemGroupStyle="{StaticResource NewsItemGroupStyle}" 
    NormalGroupStyle="{StaticResource NormalGroupStyle}" /> 

लेकिन शैली पूरे समूह को एक बदल जाता है।

+0

आप अगर यह [धागा] देख सकते हैं (http://social.msdn.microsoft.com/Forums/en-US/winappswithcsharp/ एमएसडीएन पर धागा/63a5d82c-1ad2-4e24-bfb4-122d5551c5f0 /) आपके प्रश्न का उत्तर देता है। –

+0

और सवाल यह है? – Denis

+0

मेरे पास बिल्कुल एक ही समस्या है और इसलिए इस धागे पर हर कोई http://social.msdn.microsoft.com/Forums/en-GB/winappswithcsharp/thread/5f12273f-e000-4c96-a4bc-6ccc18a104a0 – krisdyson

उत्तर

0

जैसा कि लवस्टी ने बताया, ग्रुपस्टाइल चयनकर्ता प्रत्येक स्तर पर शैली को बदलने में सक्षम है। जैसे सभी स्तर 0 समूहों में एक ही शैली होगी लेकिन सभी स्तर 1 समूहों में एक अलग शैली हो सकती है। वर्तमान में विभिन्न शैलियों के साथ स्तर 0 पर दो अलग-अलग समूह होने के लिए संभव नहीं है। वास्तव में, ऐसा प्रतीत होता है कि उसी स्तर पर किसी भी समूह के लिए लौटाई गई अंतिम शैली उस स्तर के सभी समूहों पर लागू होती है। यह दुर्भाग्यपूर्ण है, लेकिन यह वर्तमान डिजाइन है।

देव समर्थन, डिजाइन समर्थन और जिस तरह के बारे में अधिक भयानक अच्छाई: http://bit.ly/winappsupport

+1

प्रतीक्षा करें, मैं यहां कुछ स्पष्ट रूप से याद कर रहा हूं। आपके पास स्तर 0 समूह से अधिक कैसे होगा? मैंने कभी समूह और उनकी वस्तुओं को दिखाने के लिए उपयोग किए गए समूहीकृत ग्रिडव्यू को देखा है (जैसा कि GroupedItemsView टेम्पलेट में है)। क्या आप मुझे समूहीकृत ग्रिडव्यू का एक उदाहरण दिखा सकते हैं कि ए) में एक से अधिक स्तर हैं और बी) समूहस्टाइलसेलेक्टर का उपयोग करता है? धन्यवाद! – SelAromDotNet

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

  • कोई संबंधित समस्या नहीं^_^