लक्ष्य:
<DataGrid.Resources>
<ContextMenu x:Key="DataGridColumnHeaderContextMenu" ...>
</ContextMenu>
<Style TargetType="{x:Type DataGridColumnHeader}">
<Setter Property="ContextMenu"
Value="{StaticResource DataGridColumnHeaderContextMenu}" />
</Style>
</DataGrid.Resources>
हैं आप अलग अलग संदर्भ मेनू चाहते हैं के लिए अलग-अलग कॉलम हेडर तो चलाता का उपयोग करें:
<DataGrid.Resources>
<ContextMenu x:Key="ColumnHeaderContextMenu1" ...>
</ContextMenu>
<ContextMenu x:Key="ColumnHeaderContextMenu2" ...>
</ContextMenu>
<Style TargetType="{x:Type DataGridColumnHeader}">
<Style.Triggers>
<Trigger Property="Content" Value="Column1">
<Setter Property="ContextMenu"
Value="{StaticResource ColumnHeaderContextMenu1}" />
</Trigger>
<Trigger Property="Content" Value="Column2">
<Setter Property="ContextMenu"
Value="{StaticResource ColumnHeaderContextMenu2}" />
</Trigger>
</Style.Triggers>
</Style>
</DataGrid.Resources>
आशा टी टोपी मदद करता है।
स्रोत
2011-10-05 05:22:05
क्या आप कॉलम गतिशील रूप से उत्पन्न कर रहे हैं इसके बारे में क्या? – MoonKnight
गतिशील कॉलम के मामले में, दूसरा समाधान अभी भी यह मान लेगा कि आप हाथ से पहले कॉलम नामों को जान लेंगे। –