2012-03-13 5 views
6

में किसी आकार के अंदर टेक्स्ट कैसे जोड़ूं मैं सी ++ और एक्सएएमएल का उपयोग कर मेट्रो ऐप पर काम कर रहा हूं। मैं बहुभुज आकार बनाना चाहता हूं और इसके अंदर पाठ जोड़ना चाहता हूं।मैं XAML

सबसे पहले मैंने अपना खुद का कंट्रोलटेम्प्लेट परिभाषित करने और टेक्स्टब्लॉक पर इसे लागू करने के बारे में सोचा लेकिन दुर्भाग्य से यह टार्गेट टाइप = "टेक्स्टब्लॉक" को समझ में नहीं आया।

दूसरा, मैंने पॉलीगॉन कक्षा को विरासत में लेने का विचार किया और देखा कि मैं वहां कुछ भी कर सकता हूं लेकिन वह वर्ग सील कर दिया गया है।

इसे प्राप्त करने के तरीके पर कोई विचार?

धन्यवाद

उत्तर

14

WPF Xaml में आप कुछ इस तरह सरल कर सकता है:

<Grid Width="60" Height="100"> 
    <Ellipse Fill="Yellow"/> 
    <TextBlock VerticalAlignment="Center" HorizontalAlignment="Center" Text="Hello"/> 
</Grid> 

एक पीले रंग की अंडाकार के मध्य में लेख प्राप्त करने के लिए।

मैं कुछ ऐसा अनुमान लगा रहा हूं जो WinRT पर काम करेगा।

0

तो देर से, लेकिन आप ContentControl या बहुत से अन्य नियंत्रण के साथ कुछ इस तरह उपयोग कर सकते हैं:

<ContentControl Width="200" Height="100" Content="Something"> 
    <ContentControl.Template> 
     <ControlTemplate> 
      <Grid> 
       <Ellipse Fill="Red"/> 
       <TextBlock Text="{Binding Content,RelativeSource={RelativeSource FindAncestor,AncestorType=ContentControl}}" 
          TextWrapping="Wrap" 
          VerticalAlignment="Center" 
          HorizontalAlignment="Center"/> 
      </Grid> 
     </ControlTemplate> 
    </ContentControl.Template> 
</ContentControl>