[ad_1]
हाय दोस्तों
कृपया कृपया चित्र देखें इंटरसेक्शन – फ्रीइमेज.होस्ट[^]
जैसा कि आप देख रहे हैं कि डेटाग्रिड में रोहेडर्स और कॉलमहेडर्स के बीच एक सफेद स्थान है। तो मुझे यह जानना होगा कि मैं इसका रंग कैसे बदल सकता हूँ?
धन्यवाद।
मैंने क्या प्रयास किया है:
मैंने RowHeader, साथ ही ColumnHeader की पृष्ठभूमि बदलने की कोशिश की, लेकिन उसका रंग नहीं बदला।
मैंने इंटरनेट पर खोज की लेकिन मुझे इसके लिए कोई कोड नहीं मिला।
समाधान 1
WPF नियंत्रण को समझने के लिए सबसे अच्छी जगह डिफ़ॉल्ट टेम्पलेट को देखना है। डेटाग्रिड के लिए इसे यहां पाया जा सकता है: डेटाग्रिड शैलियाँ और टेम्पलेट – WPF .NET फ्रेमवर्क | माइक्रोसॉफ्ट लर्न[^].
आप जिस ओर इशारा कर रहे हैं वह है सभी बटन का चयन करें के ऊपरी-बाएँ कोने में DataGrid
.
उपरोक्त लिंक का उपयोग करना, यही है DataGridSelectAllButtonStyle
. यह ऊपर लिंक किए गए पेज पर पाई गई पहली शैली है।
<Style TargetType="{x:Type Button}" x:Key="{ComponentResourceKey ResourceId=DataGridSelectAllButtonStyle, TypeInTargetAssembly={x:Type DataGrid}}"> <!-- trimmed --> </Style>
टेम्पलेट की खोज करें और आप देख सकते हैं कि इसे कहां लागू किया गया है। यह वह शैली है जिसे आपको संशोधित करने की आवश्यकता है।
<ControlTemplate TargetType="{x:Type DataGrid}"> <!-- trimmed --> <Button Focusable="false" Command="{x:Static DataGrid.SelectAllCommand}" Style="{DynamicResource {ComponentResourceKey ResourceId=DataGridSelectAllButtonStyle, TypeInTargetAssembly={x:Type DataGrid}}}" Visibility="{Binding HeadersVisibility, ConverterParameter={x:Static DataGridHeadersVisibility.All}, Converter={x:Static DataGrid.HeadersVisibilityConverter}, RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}" Width="{Binding CellsPanelHorizontalOffset, RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}" /> <!-- trimmed --> </ControlTemplate>
तो आपको संशोधित करने की आवश्यकता है DataGridSelectAllButtonStyle
और एक नया लागू करें ControlTemplate
. उस पेज पर एक लिंक है जो आपको बताएगा कि कैसे बनाएं ControlTemplate
और पृष्ठ के नीचे एक नमूने का लिंक।
[ad_2]
コメント