38 lines
1019 B
C#
38 lines
1019 B
C#
using System.Windows.Controls;
|
|
using System.Windows.Input;
|
|
using YY.Admin.Module;
|
|
|
|
namespace YY.Admin.Views.Control
|
|
{
|
|
/// <summary>
|
|
/// Interaction logic for Sidebar.xaml
|
|
/// </summary>
|
|
public partial class SidebarControl : UserControl
|
|
{
|
|
public SidebarControl()
|
|
{
|
|
InitializeComponent();
|
|
}
|
|
private void OnNavItemMouseDown(object sender, MouseButtonEventArgs e)
|
|
{
|
|
if (sender is ListBoxItem item && item.DataContext is NavItem navItem)
|
|
{
|
|
// 执行命令(如果有)
|
|
if (navItem.Command?.CanExecute(navItem) == true)
|
|
{
|
|
navItem.Command.Execute(navItem);
|
|
}
|
|
|
|
// 如果不可选,阻止选中
|
|
if (!navItem.IsActive)
|
|
{
|
|
// 阻止 ListBox 自动选择该项
|
|
e.Handled = true;
|
|
return;
|
|
}
|
|
}
|
|
}
|
|
|
|
}
|
|
}
|