Hi everyone at Syncfusion,I'm trying to create a button on a toolbar with an associated (custom) menu.When clicking on the toolbar button, the menu is not shown and gives an error.Here's the part of the code I'm using:@code{SfMenuMenuObj; public ListCustomMenuItems = new List {new CustomMenuItem{ Id = "optFiltro", Text = "Filtrar" },new CustomMenuItem{ Id = "optPendentes", Text = "Pendentes", ParentId = "optFiltro" },new CustomMenuItem{ ParentId="optFiltro", Separator= true },new CustomMenuItem{ Id = "optPendentesHoje", Text = "Para hoje", ParentId = "optPendentes", IconCss="e-icons e-bullet-dot" },new CustomMenuItem{ Id = "optPendentesFuturo", Text = "No futuro", ParentId = "optPendentes", IconCss="e-icons e-bullet-dot" },new CustomMenuItem{ Id = "optPendentesPassado", Text = "No passado", ParentId = "optPendentes", IconCss="e-icons e-circle" },new CustomMenuItem{ ParentId="optPendentes", Separator= true },new CustomMenuItem{ Id = "optPendentesTodas", Text = "Todas", ParentId = "optPendentes", IconCss="e-icons e-bullet-ok" },new CustomMenuItem{ Id = "optRealizadas", Text = "Realizadas", ParentId = "optFiltro" },new CustomMenuItem{ParentId="optFiltro", Separator= true },new CustomMenuItem{ Id = "optRealizadasHoje", Text = "Hoje", ParentId = "optRealizadas", IconCss="e-icons e-circle" },new CustomMenuItem{ Id = "optRealizadasPassado", Text = "No passado", ParentId = "optRealizadas", IconCss="e-icons e-circle" },new CustomMenuItem{ Id = "optRealizadasFuturo", Text = "No Futuro", ParentId = "optRealizadas", IconCss="e-icons e-circle" },new CustomMenuItem{ ParentId="optRealizadas", Separator= true },new CustomMenuItem{ Id = "optRealizadasTodas", Text = "Todas", ParentId = "optRealizadas", IconCss="e-icons e-bullet-ok" },new CustomMenuItem{ Id = "optTodasTarefasHoje", Text = "Todas as tarefas para hoje ou com alerta", ParentId = "optFiltro", IconCss="e-icons e-tasks-info"},new CustomMenuItem{ ParentId="optFiltro", Separator= true },new CustomMenuItem{ Id = "optTarefasSemanaCorrente", Text = "Todas as tarefas para esta semana", ParentId = "optFiltro", IconCss="e-icons e-tasks-info" },new CustomMenuItem{ParentId="optFiltro", Separator= true },new CustomMenuItem{ Id = "optTarefasProximaSemana", Text = "Todas as tarefas para a próxima semana", ParentId = "optFiltro", IconCss="e-icons e-tasks-info" },new CustomMenuItem{ ParentId="optFiltro", Separator= true },new CustomMenuItem{ Id = "optTarefasAResolver", Text = "Tarefas a Resolver", ParentId = "optFiltro", IconCss="e-icons e-tasks-info" },new CustomMenuItem{ ParentId="optFiltro", Separator= true },new CustomMenuItem{ Id = "optClassificacao", Text = "Classificacao", ParentId = "optFiltro" },new CustomMenuItem{ ParentId="optFiltro", Separator= true },new CustomMenuItem{ Id = "optMuitoImportantes", Text = "Muito Importante", ParentId = "optClassificacao", IconCss="e-icons e-circle" },new CustomMenuItem{ Id = "optImportantes", Text = "Importante", ParentId = "optClassificacao", IconCss="e-icons e-circle" },new CustomMenuItem{ Id = "optNormal", Text = "Normal", ParentId = "optClassificacao" },new CustomMenuItem{ Id = "optSemClassificação", Text = "Sem classificacao", ParentId = "optClassificacao", IconCss="e-icons e-circle" },new CustomMenuItem{ ParentId="optFiltro", Separator= true },new CustomMenuItem{ Id = "optTodasTarefas", Text = "Todas as tarefas", ParentId = "optFiltro", IconCss="e-icons e-tasks-info" }};public class CustomMenuItem{public string Id { get; set; }public string Text { get; set; }public string ParentId { get; set; }public bool Separator { get; set; }public string IconCss { get; set; }}private void SelectHandler(MenuEventArgsargs) {var itemIndex = MenuObj.GetItemIndex(args.Item);var item = CustomMenuItems.GetRange(itemIndex[0], 1);}}>>> Error Message <<<System.InvalidCastException: Unable to cast object of type 'Microsoft.AspNetCore.Components.EventCallback`1[Syncfusion.Blazor.Navigations.BeforeOpenCloseMenuEventArgs`1[ClinicaSoft.Web.Pages.Doctors.DoctorsPanel.TasksAndEvents+CustomMenuItem]]' to type 'Microsoft.AspNetCore.Components.EventCallback`1[Syncfusion.Blazor.Navigations.BeforeOpenCloseMenuEventArgs`1[Syncfusion.Blazor.Navigations.MenuItemModel]]'.-------------How to select / process a menu option?Perhaps I will not be defining the menu well (...)Can you help?Thanks in advance.Fausto
private void SelectHandler(MenuEventArgs
should be:
Hi everyone at Syncfusion,I'm trying to create a button on a toolbar with an associated (custom) menu.When clicking on the toolbar button, the menu is not shown and gives an error.Here's the part of the code I'm using:@code{SfMenuMenuObj; public ListCustomMenuItems = new List {new CustomMenuItem{ Id = "optFiltro", Text = "Filtrar" },new CustomMenuItem{ Id = "optPendentes", Text = "Pendentes", ParentId = "optFiltro" },new CustomMenuItem{ ParentId="optFiltro", Separator= true },new CustomMenuItem{ Id = "optPendentesHoje", Text = "Para hoje", ParentId = "optPendentes", IconCss="e-icons e-bullet-dot" },new CustomMenuItem{ Id = "optPendentesFuturo", Text = "No futuro", ParentId = "optPendentes", IconCss="e-icons e-bullet-dot" },new CustomMenuItem{ Id = "optPendentesPassado", Text = "No passado", ParentId = "optPendentes", IconCss="e-icons e-circle" },new CustomMenuItem{ ParentId="optPendentes", Separator= true },new CustomMenuItem{ Id = "optPendentesTodas", Text = "Todas", ParentId = "optPendentes", IconCss="e-icons e-bullet-ok" },new CustomMenuItem{ Id = "optRealizadas", Text = "Realizadas", ParentId = "optFiltro" },new CustomMenuItem{ParentId="optFiltro", Separator= true },new CustomMenuItem{ Id = "optRealizadasHoje", Text = "Hoje", ParentId = "optRealizadas", IconCss="e-icons e-circle" },new CustomMenuItem{ Id = "optRealizadasPassado", Text = "No passado", ParentId = "optRealizadas", IconCss="e-icons e-circle" },new CustomMenuItem{ Id = "optRealizadasFuturo", Text = "No Futuro", ParentId = "optRealizadas", IconCss="e-icons e-circle" },new CustomMenuItem{ ParentId="optRealizadas", Separator= true },new CustomMenuItem{ Id = "optRealizadasTodas", Text = "Todas", ParentId = "optRealizadas", IconCss="e-icons e-bullet-ok" },new CustomMenuItem{ Id = "optTodasTarefasHoje", Text = "Todas as tarefas para hoje ou com alerta", ParentId = "optFiltro", IconCss="e-icons e-tasks-info"},new CustomMenuItem{ ParentId="optFiltro", Separator= true },new CustomMenuItem{ Id = "optTarefasSemanaCorrente", Text = "Todas as tarefas para esta semana", ParentId = "optFiltro", IconCss="e-icons e-tasks-info" },new CustomMenuItem{ParentId="optFiltro", Separator= true },new CustomMenuItem{ Id = "optTarefasProximaSemana", Text = "Todas as tarefas para a próxima semana", ParentId = "optFiltro", IconCss="e-icons e-tasks-info" },new CustomMenuItem{ ParentId="optFiltro", Separator= true },new CustomMenuItem{ Id = "optTarefasAResolver", Text = "Tarefas a Resolver", ParentId = "optFiltro", IconCss="e-icons e-tasks-info" },new CustomMenuItem{ ParentId="optFiltro", Separator= true },new CustomMenuItem{ Id = "optClassificacao", Text = "Classificacao", ParentId = "optFiltro" },new CustomMenuItem{ ParentId="optFiltro", Separator= true },new CustomMenuItem{ Id = "optMuitoImportantes", Text = "Muito Importante", ParentId = "optClassificacao", IconCss="e-icons e-circle" },new CustomMenuItem{ Id = "optImportantes", Text = "Importante", ParentId = "optClassificacao", IconCss="e-icons e-circle" },new CustomMenuItem{ Id = "optNormal", Text = "Normal", ParentId = "optClassificacao" },new CustomMenuItem{ Id = "optSemClassificação", Text = "Sem classificacao", ParentId = "optClassificacao", IconCss="e-icons e-circle" },new CustomMenuItem{ ParentId="optFiltro", Separator= true },new CustomMenuItem{ Id = "optTodasTarefas", Text = "Todas as tarefas", ParentId = "optFiltro", IconCss="e-icons e-tasks-info" }};public class CustomMenuItem{public string Id { get; set; }public string Text { get; set; }public string ParentId { get; set; }public bool Separator { get; set; }public string IconCss { get; set; }}private void SelectHandler(MenuEventArgsargs) {var itemIndex = MenuObj.GetItemIndex(args.Item);var item = CustomMenuItems.GetRange(itemIndex[0], 1);}}>>> Error Message <<<System.InvalidCastException: Unable to cast object of type 'Microsoft.AspNetCore.Components.EventCallback`1[Syncfusion.Blazor.Navigations.BeforeOpenCloseMenuEventArgs`1[ClinicaSoft.Web.Pages.Doctors.DoctorsPanel.TasksAndEvents+CustomMenuItem]]' to type 'Microsoft.AspNetCore.Components.EventCallback`1[Syncfusion.Blazor.Navigations.BeforeOpenCloseMenuEventArgs`1[Syncfusion.Blazor.Navigations.MenuItemModel]]'.-------------How to select / process a menu option?Perhaps I will not be defining the menu well (...)Can you help?Thanks in advance.Fausto
@using Syncfusion.Blazor.Navigations
<p>Selected Item: @selectedItem</p>
<SfMenu Items="@CustomMenuItems">
<MenuEvents TValue="MenuItemModel" ItemSelected="Selected"></MenuEvents>
</SfMenu>
@code {
public string selectedItem;
public List<CustomMenuItem> CustomMenuItems = new List<CustomMenuItem>
{
new CustomMenuItem{ Id = "optFiltro", Text = "Filtrar" },
. . .
new CustomMenuItem{ Id = "optTodasTarefas", Text = "Todas as tarefas", ParentId = "optFiltro", IconCss="e-icons e-tasks-info" }
};
public void Selected(MenuEventArgs<MenuItemModel> args)
{
selectedItem = args.Item.Text;
}
public class CustomMenuItem
{
public string Id { get; set; }
public string Text { get; set; }
public string ParentId { get; set; }
public bool Separator { get; set; }
public string IconCss { get; set; }
}
}
|
By mere chance, I just happened to visit the incidents page and found the answer above... was it addressed to Philippe?
Ok.
Since I was the one who posed the question, I wondered why I didn't get that feedback from your.
Moving on...
Fausto