2011-05-16 18 views
9

पैनोरमा आइटम हेडर के फ़ॉन्ट आकार को एक बार सेट करने का सबसे आसान तरीका क्या है ताकि इसका उपयोग मेरे ऐप में सभी आइटम शीर्षकों के लिए किया जा सके?पैनोरमा आइटम हेडर के फ़ॉन्ट आकार को कैसे बदला जाए?

उत्तर

23

अभी तक आपके ऐप में सभी शीर्षकों के लिए इसे करने का कोई तरीका नहीं है। आपको प्रत्येक के लिए शैली सेट करने की आवश्यकता होगी।

मैंगो अपडेट में लागू स्टाइल आ रही है और इसे तब करने की अनुमति देनी चाहिए।

अद्यतन
यहां आप क्या कर सकते हैं।

FontSzie के लिए वैश्विक टेम्पलेट शैली बनाएं जो आप चाहते हैं। कुछ की तरह:

<controls:PanoramaItem Header="first" HeaderTemplate="{StaticResource MyItemHeaderTemplate}"> 
    // ... 
</controls:PanoramaItem> 
+0

"सेट स्टाइल": क्या आपका मतलब हेडर टेम्पलेट के लिए डेटा टेम्पलेट सेट करना है? यदि हां, तो क्या मुझे अपने 4 पैनोरमा आइटमों में से प्रत्येक के लिए 4 डेटा टेम्पलेट बनाने की आवश्यकता है क्योंकि प्रत्येक आइटम हेडर अलग है? या क्या मैं किसी भी तरह PanoramaItem.Header संपत्ति में एक एकल डेटा टेम्पलेट बांध सकता हूँ? – Buju

+0

आह थक्स। मैं टेक्स्ट = "{बाइंडिंग}" के साथ भाग खो रहा था ... मुझे नहीं पता था कि डेटा टेम्पलेट के अंदर से हेडर स्ट्रिंग का उपयोग कैसे करें। क्या यह देखने का कोई तरीका है कि मैं डेटा टेम्पलेट में कौन से गुण डेटाबेस कर सकता हूं यदि ऐसा कुछ मेरे साथ कभी होता है? – Buju

1

आप अपनी खुद की PanoramaItem नियंत्रण बना सकते हैं और अपने कस्टम लागू करने के लिए generic.xaml उपयोग कर सकते हैं:

<Application.Resources> 
    <DataTemplate x:Key="MyItemHeaderTemplate"> 
     <Grid> 
      <ContentPresenter> 
       <TextBlock Text="{Binding}" FontSize="20" /> 
      </ContentPresenter> 
     </Grid> 
    </DataTemplate> 
</Application.Resources> 
तो हर PanoramaItem मैं इस तरह से मैं HeaderTemplate सेट स्टाइल है करना चाहते हैं कि में

PanoramaItem शैली।

public class MyPanoramaItem : Microsoft.Phone.Controls.PanoramaItem 

    { 
     public MyPanoramaItem() 
     { 
      DefaultStyleKey = typeof(MyPanoramaItem); 
     } 
    } 

तो फिर तुम \ Generic.xaml

विषय-वस्तु बनाने
<ResourceDictionary 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    xmlns:local="clr-namespace:YourProjectNamespace"> 

    <Style TargetType="local:MyPanoramaItem"> 
     <!—your custom PanoramaItem style-->  
    </Style> 
</ResourceDictionary> 

और फिर इस तरह अपने कस्टम पैनोरमा का उपयोग करें:

xmlns:controls="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone.Controls" 
xmlns:local="clr-namespace:YourProjectNamespace" 

<Grid x:Name="LayoutRoot" Background="Transparent"> 
     <!--Panorama control--> 
     <controls:Panorama Title="my application"> 
      <controls:Panorama.Background> 
       <ImageBrush ImageSource="PanoramaBackground.png"/> 
      </controls:Panorama.Background> 

      <!--Panorama item one--> 
      <local:MyPanoramaItem Header="first item"> 
      </ local:MyPanoramaItem > 
     </controls:Panorama> 

generic.xaml और इसके उपयोग के बारे में अधिक आप here पा सकते हैं ।

2

शायद तुम <controls:Panorama> के तहत इस में डालने की कोशिश कर सकते:

<controls:Panorama.TitleTemplate> 
    <DataTemplate> 
    <TextBlock Text="{Binding Content, RelativeSource={RelativeSource TemplatedParent}}" FontSize="150" Margin="0,20,0,0" FontWeight="Bold" /> 
    </DataTemplate> 
</controls:Panorama.TitleTemplate> 

यहाँ मिला: http://www.jstawski.com/archive/2010/10/25/change-windows-phone-7-panoramarsquos-control-title.aspx

5

यह मेरे लिए भी एक कठिन मुद्दा हो गया था। हालांकि मुझे प्रत्येक हेड आइटम के लिए इसका ख्याल रखने के लिए एक बहुत ही सरल समाधान मिला है जिसे आप आकार बदलना चाहते हैं/fontweight/font ... so-on। मैंने एक मौजूदा प्रोजेक्ट से एक स्निपेट डाला है जिस पर मैं काम कर रहा हूं। नियंत्रण के लिए xaml भाग पर ध्यान दें: PanoramaItem.HeaderTemplate। यह वह जगह है जहां हेडर आइटम के लिए मंदिर को संशोधित किया गया है। शुभ लाभ!

<!--Panorama item one--> 
     <controls:PanoramaItem Header="Locations"> 
      <Grid> 
       <ListBox Height="498" HorizontalAlignment="Left" Margin="2,0,0,0" Name="listBox1" VerticalAlignment="Top" Width="424" /> 
      </Grid> 

      <controls:PanoramaItem.HeaderTemplate> 
       <DataTemplate> 
        <TextBlock Text="{Binding Content, RelativeSource={RelativeSource TemplatedParent}}" FontSize="55" FontFamily="Segoe WP Bold" Foreground="Black" TextAlignment="Left" FontWeight="Normal" FontStyle="Italic" /> 
       </DataTemplate> 
      </controls:PanoramaItem.HeaderTemplate> 


     </controls:PanoramaItem> 
संबंधित मुद्दे