में टेक्स्ट संरेखण मैं WPF DataGrid
में कॉलम डेटा को केंद्र में कैसे संरेखित कर सकता हूं?एक WPF डेटाग्रिड
उत्तर
यह बारीकियों को जानने के बिना कहना मुश्किल है, लेकिन यहां एक DataGridTextColumn
कि केंद्रित है है:
<wpf:DataGridTextColumn Header="Name" Binding="{Binding Name}" IsReadOnly="True">
<wpf:DataGridTextColumn.CellStyle>
<Style>
<Setter Property="FrameworkElement.HorizontalAlignment" Value="Center"/>
</Style>
</wpf:DataGridTextColumn.CellStyle>
</wpf:DataGridTextColumn>
दिसंबर 2010 में भी मेरे लिए बहुत अच्छा काम किया! – ErocM
यह दृष्टिकोण मेरे लिए काम नहीं किया। पाठ केंद्रित था, लेकिन सेल चौड़ाई अब अपने शीर्षलेख के साथ मेल नहीं खाती है। मोहम्मद के समाधान ने सबसे अच्छा काम किया। –
जैसा कि किफ ने कहा, सेल भी स्थानांतरित हो रहा है। आपको टेक्स्टब्लॉक को मोहम्मद ए फदिल उदाहरण के रूप में लक्षित करना होगा। –
ठीक है, मैं frameworkElement दृष्टिकोण का इस्तेमाल किया लेकिन वहाँ एक अजीब व्यवहार जब आप पंक्ति हाइलाइट करने के लिए प्रयास करें था।
मैंने इस thread में WPF डेटाग्रिड संरेखण का एक और उदाहरण दिया है!
यदि आप उपयोग कर रहे हैं DataGridTextColumn आप निम्नलिखित कोड का उपयोग कर सकते हैं:
<Style TargetType="DataGridCell">
<Style.Setters>
<Setter Property="TextBlock.TextAlignment" Value="Center" />
</Style.Setters>
</Style>
यह सबसे अच्छा तरीका है - सेल पर संरेखण की स्थापना का कारण बनता है सेल इसकी चौड़ाई, जब पंक्ति – bruceboughton
चयन किया जाता है शुरू में यह मेरे लिए काम नहीं किया जो अजीब लग रहा है को भरने के लिए नहीं है, लेकिन थोड़ा और परीक्षण के बाद और में कुछ त्रुटियों को ठीक करने मेरी कोड इस समाधान महान काम किया। धन्यवाद! – BrianVPS
@ ब्रायन वीपीएस स्वागत है, मुझे यह सुनकर खुशी हो रही है: डी –
केंट Boogaart के लिए +1। मैं यह कर समाप्त हो गया है, जो कोड थोड़ा अव्यवस्था कम मिलती है (और मुझे कई स्तंभों पर संरेखण का उपयोग करने के लिए सक्षम बनाता है):
<Resources>
<Style x:Key="NameCellStyle" TargetType="DataGridCell">
<Setter Property="HorizontalAlignment" Value="Center" />
</Style>
</Resources>
<DataGrid.Columns>
<DataGridTextColumn Header="Name" CellStyle="{StaticResource NameCellStyle}" Binding="{Binding Name}"/>
// .. other columns
</DataGrid.Columns>
+1, लेकिन मेरे लिए 'क्षैतिज एलाइनमेंट' काम नहीं करता है जबकि 'क्षैतिज सामग्री' संरेखण करता है। – Emmanuel
मेरा पसंदीदा समाधान है:
<DataGridTextColumn Header="My Column" Binding="{Binding MyDBValue}" Width="100" >
<DataGridTextColumn.CellStyle>
<Style>
<Setter Property="FrameworkElement.HorizontalAlignment" Value="Center"/>
</Style>
</DataGridTextColumn.CellStyle>
या पीछे कोड में:
grid.CellStyle = newCellStyle();
public static Style newCellStyle()
{
//And here is the C# code to achieve the above
System.Windows.Style style = new Style(typeof(DataGridCell));
style.Setters.Add(new System.Windows.Setter
{
Property = Control.HorizontalAlignmentProperty,
Value = HorizontalAlignment.Center
});
return style;
}
मैंने हुट्टेहिल के समाधान से शुरुआत की। दुर्भाग्य से, यह अभी तक मेरे लिए काम नहीं किया है। मैं उसका जवाब बदलाव और (समाधान दाईं ओर पाठ संरेखित करने के लिए है) इस के साथ आया था:
<Resources>
<Style x:Key="RightAligned" TargetType="TextBlock">
<Setter Property="HorizontalAlignment" Value="Right"/>
</Style>
</Resources>
आप देख सकते हैं, मैं एक TextBlock, नहीं DataGridCell के लिए शैली लागू होता है।
और फिर मैं तत्व शैली, नहीं सेल शैली स्थापित करने के लिए किया था।
ElementStyle="{StaticResource RightAligned}"
कृपया ध्यान दें कि इस 'DataGridTextColumn' –
@JP Hellemons साथ काम नहीं करता: मेरे लिए यह' DataGridTextColumn' – Mikhail
मुझे सेल को स्थानांतरित करने और स्वीकार किए गए उत्तर का उपयोग करके फंकी दिखने में समस्याएं आईं। मुझे पता है कि यह देर हो चुकी है, लेकिन उम्मीद है कि मेरे निष्कर्ष किसी की मदद करेंगे। मैं का उपयोग करें:
<DataGridTextColumn.ElementStyle>
<Style>
<Setter Property="FrameworkElement.HorizontalAlignment" Value="Center"/>
</Style>
बल्कि CellStyle से। ,
var MyStyle = new Style(typeof(DataGridCell)) {
Setters = {
new Setter(TextBlock.TextAlignmentProperty, TextAlignment.Center)
}
};
Style
लागू करने के लिए DataGrid
की CellStyle
संपत्ति, उदा सेट:
यहाँ @ MohammedAFadil के XAML जवाब है, सी # के पीछे कोड में बदला
var MyGrid = new DataGrid() {
CellStyle = MyStyle
};
सरल और साफ के साथ काम किया! +1 :) बस मुझे क्या चाहिए। –
धन्यवाद @ मोहम्मदएफैडिल के एक्सएएमएल उत्तर को परिवर्तित करने के लिए डैनी बेकेट धन्यवाद, सी # कोड में परिवर्तित हो गया। मेरे सभी डेटाग्रिड गतिशील रूप से स्थापित किए गए हैं, इसलिए जब भी मैं कुछ भी बदल सकता हूं।
एक खाली डेटाग्रिड स्थापित करने के लिए, इसमें कुछ भी नहीं है और फिर इसे डेटा से बांधें, बस अपना डेटाग्रिड लें।कॉलम
var centerTextSetter = new Style(typeof(DataGridCell))
{
Setters = { new Setter(TextBlock.TextAlignmentProperty, TextAlignment.Center) }
};
DgDbNames.Columns.Add(new DataGridTextColumn()
{
Header = "Db Name",
Binding = new System.Windows.Data.Binding("DbName"),
IsReadOnly = true,
Width = new DataGridLength(0.2, DataGridLengthUnitType.Star),
CellStyle = centerTextSetter
});
- 1. एक WPF डेटाग्रिड
- 2. एक WPF डेटाग्रिड
- 3. wpf डेटाग्रिड
- 4. wpf डेटाग्रिड
- 5. WPF डेटाग्रिड
- 6. डेटाग्रिड-WPF
- 7. डेटाग्रिड (WPF)
- 8. WPF डेटाग्रिड पूर्वावलोकनमाउसडाउन
- 9. WPF डेटाग्रिड प्रदर्शन चिंताओं
- 10. बड़े wpf डेटाग्रिड
- 11. एक्सेल से WPF डेटाग्रिड
- 12. WPF डेटाग्रिड पंक्ति रंग बदलें
- 13. wpf हटाएं डेटाग्रिड बाएं पैडिंग
- 14. wpf डेटाग्रिड में संदर्भ मेनू कैसे जोड़ें?
- 15. WPF डेटाग्रिड पंक्ति क्षैतिज संरेखण समस्या
- 16. WPF डेटाग्रिड बाध्यकारी कस्टम कॉलम हेडर
- 17. wpf डेटाग्रिड सेल शैली के साथ समस्या
- 18. WPF डेटाग्रिड सेल रंग पूर्व सेल मूल्य
- 19. WPF टूलकिट नियंत्रण (विशेष रूप से डेटाग्रिड)
- 20. एक WPF डेटाग्रिड पृष्ठभूमि छवि को चालू और बंद करना?
- 21. WPF डेटाग्रिड ROWDetailsTemplate दृश्यता एक संपत्ति के लिए बाध्य
- 22. स्क्रैच से एक तेज WPF डेटाग्रिड नियंत्रण कैसे बनाएं?
- 23. WPF: एक कस्टम संग्रह में कार्यान्वयन और बाध्यकारी (डेटाग्रिड)
- 24. एक WPF डेटाग्रिड में पंक्तियां जोड़ना जहां कॉलम को रनटाइम
- 25. स्टाइल या संसाधन में WPF डेटाग्रिड कॉलम
- 26. डेटाग्रिड
- 27. डेटाग्रिड
- 28. डेटाग्रिड
- 29. डब्ल्यूपीएफ: डेटाग्रिड
- 30. क्या एक खाली डेटाग्रिड
सिल्वरलाइट लिए, देखें [इस उत्तर] (http://stackoverflow.com/questions/7916226/column-aligment-in-a-silverlight-datagrid/7916301#7916301)। –