Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

hc:SideMenu侧边菜单通过代码修改选中项,无法触发鼠标的事件怎么办? #1634

Open
realyw opened this issue Aug 17, 2024 · 1 comment

Comments

@realyw
Copy link

realyw commented Aug 17, 2024

Feature request type

enhancement

Is your feature request related to a problem? Please describe

我想通过点击一个按钮而不是菜单进行修改侧边菜单的选中状态,代码中sideMenuItem.IsSelected = true;修改后,无法触发sideMenuItem中受保护的OnSelected方法,导致我再次点击原先菜单项发现选中状态同时出现两个选中的。

Describe the solution you'd like

我想从某个页面中的按钮点击,然后修改菜单选中状态,如何实现呢?

Describe alternatives you've considered

No response

Additional context

///


/// 更新菜单选中状态
///

///
private void UpdateSideMenuSelected(SideMenuMessage message)
{
foreach (var item in SideMenu.Items)
{
if (item is SideMenuItem sideMenuItem)
{
if (sideMenuItem.Tag != null && message.MenuItemTag != null)
{
if (sideMenuItem.Tag.ToString() == message.MenuItemTag)
{
sideMenuItem.IsSelected = true;
}
}

        if (sideMenuItem.HasItems)
        {
            foreach (var subItem in sideMenuItem.Items)
            {
                if (subItem is SideMenuItem subSideMenuItem)
                {
                    if (subSideMenuItem.Tag != null && message.MenuItemTag != null)
                    {
                        if (subSideMenuItem.Tag.ToString() == message.MenuItemTag)
                        {
                            sideMenuItem.IsSelected = true;
                        }
                    }
                }
            }
        }
    }
}

}

@POPCORNBOOM
Copy link

同求

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants