2009-10-01 21 views
6

मेरा डब्ल्यूपीएफ डाटाग्रिड के कॉलम निश्चित चौड़ाई हैं, जिसका मतलब है कि पंक्तियों में लंबा टेक्स्ट काटा जाता है। मैं टेक्स्ट रैप कैसे कर सकता हूं?डब्ल्यूपीएफ टूलकिट डेटाग्रिड सेल टेक्स्ट रैपिंग

उत्तर

5

आप सेल को टेक्स्टवैपिंग सक्षम के साथ टेक्स्टब्लॉक के साथ प्रतिस्थापित कर सकते हैं। यानी

<dg:DataGridTemplateColumn Header="Description" Width="*"> 
    <dg:DataGridTemplateColumn.CellTemplate> 
     <DataTemplate> 
      <TextBlock Text="{Binding Description}" TextWrapping="WrapWithOverflow"/>          
     </DataTemplate> 
    </dg:DataGridTemplateColumn.CellTemplate> 
</dg:DataGridTemplateColumn> 
+1

फिर मैं सेल टेक्स्ट को कैसे संपादित कर सकता हूं? – Marcel

+0

टेक्स्टब्लॉक केवल पढ़ा जाता है। आपको टेक्स्टबॉक्स का उपयोग करना चाहिए। – Slampen

8

आप एक DataGridTextColumn का उपयोग कर रहे हैं, तो आप DataGridTextColumn.ElementStyle के लिए शैली परिभाषित करने की जरूरत

<dg:DataGridTextColumn Header="SomeLongText" Binding="{Binding MyText}"> 
    <dg:DataGridTextColumn.ElementStyle> 
    <Style TargetType="TextBlock"> 
     <Setter Property="TextWrapping" Value="Wrap"/> 
    </Style> 
    </dg:DataGridTextColumn.ElementStyle> 
</dg:DataGridTextColumn> 

पूर्ण explination निम्नलिखित http://msdn.microsoft.com/en-us/library/system.windows.controls.datagridtextcolumn(v=vs.95).aspx

1

में पाया जा सकता अपने DataGridTextColumn हैं आपके पीछे कोड में बनाया जा रहा है शैली और सेटर्स को इस तरह सेट कर सकते हैं:

 _dataGridTextColumn.MaxWidth = 550; 
     _dataGridTextColumn.ElementStyle = new System.Windows.Style(typeof(TextBlock)); 
     _dataGridTextColumn.ElementStyle.Setters.Add(new Setter(TextBlock.TextWrappingProperty, TextWrapping.Wrap)); 

इससे टेक्स्ट को ब्लॉक करने के लिए _dataGridTextColumn के अंदर पाठ का कारण बन जाएगा।

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