Adding different ContextMenu each GridDataVisibleColumn in XAML
I have a datagrid with ten columns and would like to add a contextmenu specific to each column in XAML, is this possible? I see that the GridDataVisible.ColumnStyle has a ContextMenuItems property, but was not able to figure out how to use it.
<syncfusion:GridDataVisibleColumn.ColumnStyle>
<syncfusion:GridDataColumnStyle HorizontalAlignment="Left" ReadOnly="True" CellTypeEnum="TextBox">
<syncfusion:GridStyleInfo.ContextMenuItems>
<MenuItems:RecordMenuItems>
<MenuItem
Header="Get Location Details"
Command="DataGrid:GridCommands.GetDetails"
CommandTarget="{Binding Path=PlacementTarget,
RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type ContextMenu}}}"
CommandParameter="{Binding GridSelectedItem}">
</MenuItem>
</MenuItems:RecordMenuItems>
</syncfusion:GridStyleInfo.ContextMenuItems>
</syncfusion:GridDataColumnStyle>
</syncfusion:GridDataVisibleColumn.ColumnStyle>
<syncfusion:GridDataVisibleColumn.HeaderStyle>
<syncfusion:GridDataColumnStyle HorizontalAlignment="Center"/>
</syncfusion:GridDataVisibleColumn.HeaderStyle>
</syncfusion:GridDataVisibleColumn>
Hi Ed
You can
specify ContextMenu for specific columns by handling QueryContextMenuInfo
event. .Please find the code snippet below,
Code Snippet:
|
List<MenuItem> menuitems = new List<MenuItem>();
public
MainWindow()
{
InitializeComponent();
menuitems.Add(new MenuItem() { Header = "Item
1" });
menuitems.Add(new MenuItem() { Header = "Item
2" });
this.dataGrid1.Model.QueryContextMenuInfo
+= Model_QueryContextMenuInfo;
}
void
Model_QueryContextMenuInfo(object sender, GridQueryContextMenuInfoEventArgs e)
{
var style
= e.Style as GridDataStyleInfo;
if (
style.CellIdentity.Column!=null && style.CellIdentity.Column.MappingName == "SupplierID")
{
e.Style.ContextMenuItems = menuitems;
}
} |
We created a simple sample
regarding this.Please find the attached sample below.
Please let us know if you have any
concern.
Regards
Pradeepa
Attachment: Cotextmenu_for_one_column_c19fdaff.zip
Hi Ed
Thanks for your update.
Please let us know if you require further assistance.
Regards
Pradeepa
- 4 Replies
- 2 Participants
-
ED Ed
- Apr 4, 2014 08:39 PM UTC
- Apr 16, 2014 03:36 AM UTC