2012-07-16 12 views
10

मैं लेबल से थोड़ा वर्चुअल कीबोर्ड बनाने की कोशिश कर रहा हूं। निम्नलिखित XAML में (लेकिन सिर्फ अधिक से अधिक 3 कुंजी के साथ) अपने कीबोर्ड है:मैं एक WPF लेबल में पाठ के चारों ओर मार्जिन कैसे हटा सकता हूं?

<StackPanel Orientation="Vertical"> 
    <StackPanel Orientation="Horizontal" HorizontalAlignment="Center"> 
     <Border BorderThickness="1" BorderBrush="DarkGray"> 
      <Label Content="A" FontSize="12" MouseDown="KeyButton_Click" /> 
     </Border> 
     <Border BorderThickness="1" BorderBrush="DarkGray"> 
      <Label Content="B" FontSize="12" MouseDown="KeyButton_Click" /> 
     </Border> 
    </StackPanel> 
    <StackPanel Orientation="Horizontal" HorizontalAlignment="Center"> 
     <Border BorderThickness="1" BorderBrush="DarkGray"> 
      <Label Content="C" FontSize="12" MouseDown="KeyButton_Click" /> 
     </Border> 
    </StackPanel> 
</StackPanel> 

इस के साथ समस्या यह है कि लेबल में पाठ आसपास बहुत अधिक स्थान, की तुलना में काफी बड़ा हो कुंजीपटल का कारण है यह होना चाहिए। यदि मैं मैन्युअल रूप से लेबल की ऊंचाई और चौड़ाई निर्धारित करता हूं, तो (1) फोंट में मतभेदों के लिए खाता नहीं होगा और (2) शीर्ष और बाएं मार्जिन की बजाय पत्र का हिस्सा कट जाएगा। क्या इन मार्जिन को टेक्स्ट के रूप में आकार के समान आकार के रूप में कम करने का कोई अन्य तरीका है?

+2

क्या आपने पैडिंग को 0 पर सेट करने का प्रयास किया था? – Vale

+3

ओटी: यदि आप केवल 'लेबल' में टेक्स्ट का उपयोग करने की योजना बनाते हैं, तो' लेबल' के बजाय 'टेक्स्टब्लॉक' का उपयोग करें। कम संसाधन – Silvermind

+0

@ सिल्वरमिन्द धन्यवाद, इसे एक उत्तर के रूप में रखें! – Matt

उत्तर

10

उपयोग TextBlock 0.

को गद्दी के बजाय Label

+8

यह सही जवाब नहीं है। 'लेबल'' टेक्स्टब्लॉक' के बराबर नहीं है। 'लेबल। लक्ष्य' पर विचार करें ... – l33t

+2

यह सुनिश्चित करता है कि इस मामले में सही उत्तर जैसा लगता है। – Batman

+1

@ बैटमैन, यह केवल सही जवाब है कि आपका डेटाकॉन्टेक्स्ट उस प्रकार का है जो टेक्स्टब्लॉक द्वारा सही ढंग से प्रदर्शित होता है। मेरे हिस्से के लिए, समस्या का गुमराह करने का एकमात्र कारण यह था कि मेरे पास दूसरा प्रकार है। –

28

सेट मैं एक ही समस्या थी। गुण विंडो में किसी लेबल के गुणों की जांच करने पर, मैंने पाया कि लेबल का डिफ़ॉल्ट पैडिंग 5 है। इसे 0 पर सेट करना चाल है।

+1

धन्यवाद, यह मेरे लिए चाल है! :-) –

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