blazor-devexpress-dot-blazor-575bb81f.md
Lists context menu types available in the Grid component.
Namespace : DevExpress.Blazor
Assembly : DevExpress.Blazor.v25.2.dll
NuGet Package : DevExpress.Blazor
[Flags]
public enum GridContextMenus
| Name | Description |
|---|---|
None |
No context menus.
|
| Header |
The header context menu.
|
| Footer |
The footer context menu.
|
| DataRow |
The data row context menu.
|
| GroupPanel |
The group panel context menu.
|
| GroupRow |
The group row context menu.
|
| GroupFooter |
The group footer context menu.
|
| All |
All context menus.
|
The following properties accept/return GridContextMenus values:
| Library | Related API Members |
|---|---|
| Blazor | DxGrid.ContextMenus |
| IGrid.ContextMenus | |
| XAF: Cross-Platform .NET App UI & Web API | DxGridModel.ContextMenus |
You can display context menus for the following Grid elements:
Assign GridContextMenus values to the ContextMenus property to display contextual commands when users right-click Grid elements.
Note
The following example demonstrates how to activate/deactivate Grid context menus:
@inject WeatherForecastService ForecastService
<DxGrid Data="@Data" ContextMenu="AvailableContextMenus">
<Columns>
<DxGridDataColumn FieldName="Date" DisplayFormat="D" />
<DxGridDataColumn FieldName="TemperatureC" Caption="@("Temp. (\x2103)")" Width="120px" />
<DxGridDataColumn FieldName="TemperatureF" Caption="@("Temp. (\x2109)")" Width="120px" />
<DxGridDataColumn FieldName="Forecast" />
<DxGridDataColumn FieldName="CloudCover" />
</Columns>
</DxGrid>
@code {
object Data { get; set; }
GridContextMenus AvailableContextMenus;
protected override void OnInitialized() {
Data = ForecastService.GetForecast();
// Activates all context menus (including menus without built-in items)
AvailableContextMenus = GridContextMenus.All;
// Disables all context menus
AvailableContextMenus = GridContextMenus.None;
// Activates only context menus that contain built-in items
AvailableContextMenus = GridContextMenus.Header
| GridContextMenus.GroupPanel | GridContextMenus.GroupRow;
// Activates menus for all elements except data rows
AvailableContextMenus = GridContextMenus.All & ~GridContextMenus.DataRow;
}
}
using System;
public class WeatherForecast {
public DateTime Date { get; set; }
public int TemperatureC { get; set; }
public double TemperatureF => Math.Round((TemperatureC * 1.8 + 32), 2);
public string Forecast { get; set; }
public string CloudCover { get; set; }
public bool Precipitation { get; set; }
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;
public class WeatherForecastService {
private List<WeatherForecast> Forecast { get; set; }
private static string[] CloudCover = new[] {
"Sunny", "Partly cloudy", "Cloudy", "Storm"
};
Tuple<int, string>[] ConditionsForForecast = new Tuple<int, string>[] {
Tuple.Create( 22 , "Hot"),
Tuple.Create( 13 , "Warm"),
Tuple.Create( 0 , "Cold"),
Tuple.Create( -10 , "Freezing")
};
public WeatherForecastService() {
Forecast = CreateForecast();
}
private List<WeatherForecast> CreateForecast() {
var rng = new Random();
DateTime startDate = DateTime.Now;
return Enumerable.Range(1, 15).Select(index => {
var temperatureC = rng.Next(-10, 30);
return new WeatherForecast {
Date = startDate.AddDays(index),
TemperatureC = temperatureC,
CloudCover = CloudCover[rng.Next(0, 4)],
Precipitation = Convert.ToBoolean(rng.Next(0, 2)),
Forecast = ConditionsForForecast.First(c => c.Item1 <= temperatureC).Item2
};
}).ToList();
}
public IEnumerable<WeatherForecast> GetForecast() {
return Forecast.ToArray();
}
// ...
}
// ...
builder.Services.AddSingleton<WeatherForecastService>();
See Also