[英]WPF DataGridComboBoxColumn not showing the context menu?
我正在嘗試使DataGridComboBoxColumn具有靜態列表可供選擇:未開始,進行中,已完成
這是XAML中我所擁有的,盡管它可以正常運行,但在下拉列表中看不到這些選項:
<DataGridComboBoxColumn Header="Status" Width="auto" IsReadOnly="False" >
<DataGridColumn.HeaderStyle>
<Style TargetType="DataGridColumnHeader">
<Setter Property="Background" Value="LightGoldenrodYellow" />
<Setter Property="BorderThickness" Value="2,2,0,2" />
</Style>
</DataGridColumn.HeaderStyle>
<ContextMenuService.ContextMenu>
<ContextMenu>
<MenuItem Header="Not Started" />
<MenuItem Header="In Progress" />
<MenuItem Header="Completed" />
</ContextMenu>
</ContextMenuService.ContextMenu>
</DataGridComboBoxColumn>
我不明白為什么這不能像其他DataGrid.ContextMenu那樣工作。 我覺得我在這里確實缺少一些簡單的東西。
您可以使用CompositeCollection:
<DataGridComboBoxColumn Header="Status" Width="auto" IsReadOnly="False" SelectedItemBinding="{Binding Path=Value}">
<DataGridColumn.HeaderStyle>
<Style TargetType="DataGridColumnHeader">
<Setter Property="Background" Value="LightGoldenrodYellow" />
<Setter Property="BorderThickness" Value="2,2,0,2" />
</Style>
</DataGridColumn.HeaderStyle>
<DataGridComboBoxColumn.ItemsSource>
<CompositeCollection>
<sys:String>Not Started</sys:String>
<sys:String>In Progress</sys:String>
<sys:String>Completed</sys:String>
</CompositeCollection>
</DataGridComboBoxColumn.ItemsSource>
</DataGridComboBoxColumn>
添加名稱空間:
xmlns:sys="clr-namespace:System;assembly=mscorlib"
ContextMenuService
提供用於顯示ContextMenu的系統實現
您想要的東西與已經擁有的東西相差不遠。 經過測試,對我有用:
<DataGridComboBoxColumn Header="Status" Width="auto" IsReadOnly="False" >
<DataGridColumn.HeaderStyle>
<Style TargetType="DataGridColumnHeader">
<Setter Property="Background" Value="LightGoldenrodYellow" />
<Setter Property="BorderThickness" Value="2,2,0,2" />
</Style>
</DataGridColumn.HeaderStyle>
<DataGridComboBoxColumn.CellStyle>
<Style TargetType="DataGridCell">
<Setter Property="ContextMenu">
<Setter.Value>
<ContextMenu>
<MenuItem Header="Not Started" />
<MenuItem Header="In Progress" />
<MenuItem Header="Completed" />
</ContextMenu>
</Setter.Value>
</Setter>
</Style>
</DataGridComboBoxColumn.CellStyle>
</DataGridComboBoxColumn>
當前設置為可用於單元格單擊,但可以輕松設置為“頁眉”或兩者都設置。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.