优化菜单
This commit is contained in:
parent
9e07f293a0
commit
10c3fc4b6e
|
@ -66,87 +66,87 @@ namespace DM_Weight.ViewModels
|
|||
get { return _selectedChildMenu; }
|
||||
set
|
||||
{
|
||||
if (!_portUtil.Operate)
|
||||
{
|
||||
if (value != null)
|
||||
{
|
||||
if (value.PremissionPath.Equals("TakeRecordWindow"))
|
||||
{
|
||||
//定义传参变量
|
||||
NavigationParameters keys = new NavigationParameters();
|
||||
//if (!_portUtil.Operate)
|
||||
//{
|
||||
// if (value != null)
|
||||
// {
|
||||
// if (value.PremissionPath.Equals("TakeRecordWindow"))
|
||||
// {
|
||||
// //定义传参变量
|
||||
// NavigationParameters keys = new NavigationParameters();
|
||||
|
||||
//添加参数,键值对格式
|
||||
keys.Add("Type", 2);
|
||||
_regionManager.RequestNavigate("ContentRegion", "MachineRecordWindow", keys);
|
||||
}
|
||||
else if (value.PremissionPath.Equals("AddRecordWindow"))
|
||||
{
|
||||
//定义传参变量
|
||||
NavigationParameters keys = new NavigationParameters();
|
||||
// //添加参数,键值对格式
|
||||
// keys.Add("Type", 2);
|
||||
// _regionManager.RequestNavigate("ContentRegion", "MachineRecordWindow", keys);
|
||||
// }
|
||||
// else if (value.PremissionPath.Equals("AddRecordWindow"))
|
||||
// {
|
||||
// //定义传参变量
|
||||
// NavigationParameters keys = new NavigationParameters();
|
||||
|
||||
//添加参数,键值对格式
|
||||
keys.Add("Type", 1);
|
||||
_regionManager.RequestNavigate("ContentRegion", "MachineRecordWindow", keys);
|
||||
}
|
||||
else if (value.PremissionPath.Equals("ReturnRecordWindow"))
|
||||
{
|
||||
//定义传参变量
|
||||
NavigationParameters keys = new NavigationParameters();
|
||||
// //添加参数,键值对格式
|
||||
// keys.Add("Type", 1);
|
||||
// _regionManager.RequestNavigate("ContentRegion", "MachineRecordWindow", keys);
|
||||
// }
|
||||
// else if (value.PremissionPath.Equals("ReturnRecordWindow"))
|
||||
// {
|
||||
// //定义传参变量
|
||||
// NavigationParameters keys = new NavigationParameters();
|
||||
|
||||
//添加参数,键值对格式
|
||||
keys.Add("Type", 3);
|
||||
_regionManager.RequestNavigate("ContentRegion", "MachineRecordWindow", keys);
|
||||
}
|
||||
else if (value.PremissionPath.Equals("RetrunEmptyRecordWindow"))
|
||||
{
|
||||
//定义传参变量
|
||||
NavigationParameters keys = new NavigationParameters();
|
||||
// //添加参数,键值对格式
|
||||
// keys.Add("Type", 3);
|
||||
// _regionManager.RequestNavigate("ContentRegion", "MachineRecordWindow", keys);
|
||||
// }
|
||||
// else if (value.PremissionPath.Equals("RetrunEmptyRecordWindow"))
|
||||
// {
|
||||
// //定义传参变量
|
||||
// NavigationParameters keys = new NavigationParameters();
|
||||
|
||||
//添加参数,键值对格式
|
||||
keys.Add("Type", 3);
|
||||
_regionManager.RequestNavigate("ContentRegion", value.PremissionPath, keys);
|
||||
}
|
||||
else if (value.PremissionPath.Equals("CheckRecordWindow"))
|
||||
{
|
||||
//定义传参变量
|
||||
NavigationParameters keys = new NavigationParameters();
|
||||
// //添加参数,键值对格式
|
||||
// keys.Add("Type", 3);
|
||||
// _regionManager.RequestNavigate("ContentRegion", value.PremissionPath, keys);
|
||||
// }
|
||||
// else if (value.PremissionPath.Equals("CheckRecordWindow"))
|
||||
// {
|
||||
// //定义传参变量
|
||||
// NavigationParameters keys = new NavigationParameters();
|
||||
|
||||
//添加参数,键值对格式
|
||||
keys.Add("Type", 4);
|
||||
_regionManager.RequestNavigate("ContentRegion", "MachineRecordWindow", keys);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (value.PremissionPath.Equals("ReturnDrugWindow") || value.PremissionPath.Equals("ReturnDrugWindow2"))
|
||||
{
|
||||
if (ConfigurationManager.AppSettings["returnDrugMode"].ToString().Equals("1"))
|
||||
{
|
||||
_regionManager.RequestNavigate("ContentRegion", "ReturnDrugWindow2");
|
||||
}
|
||||
else
|
||||
{
|
||||
_regionManager.RequestNavigate("ContentRegion", "ReturnDrugWindow");
|
||||
}
|
||||
}
|
||||
else if (value.PremissionPath.Equals("SettingMainWindow") || value.PremissionPath.Equals("SettingWindow"))
|
||||
{
|
||||
//if (Convert.ToInt32(ConfigurationManager.AppSettings["hasFridge"])>0)
|
||||
//{
|
||||
// _regionManager.RequestNavigate("ContentRegion", "SettingMainWindow");
|
||||
//}
|
||||
//else
|
||||
{
|
||||
_regionManager.RequestNavigate("ContentRegion", "SettingWindow");
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
_regionManager.RequestNavigate("ContentRegion", value.PremissionPath);
|
||||
}
|
||||
}
|
||||
}
|
||||
// //添加参数,键值对格式
|
||||
// keys.Add("Type", 4);
|
||||
// _regionManager.RequestNavigate("ContentRegion", "MachineRecordWindow", keys);
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// if (value.PremissionPath.Equals("ReturnDrugWindow") || value.PremissionPath.Equals("ReturnDrugWindow2"))
|
||||
// {
|
||||
// if (ConfigurationManager.AppSettings["returnDrugMode"].ToString().Equals("1"))
|
||||
// {
|
||||
// _regionManager.RequestNavigate("ContentRegion", "ReturnDrugWindow2");
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// _regionManager.RequestNavigate("ContentRegion", "ReturnDrugWindow");
|
||||
// }
|
||||
// }
|
||||
// else if (value.PremissionPath.Equals("SettingMainWindow") || value.PremissionPath.Equals("SettingWindow"))
|
||||
// {
|
||||
// //if (Convert.ToInt32(ConfigurationManager.AppSettings["hasFridge"])>0)
|
||||
// //{
|
||||
// // _regionManager.RequestNavigate("ContentRegion", "SettingMainWindow");
|
||||
// //}
|
||||
// //else
|
||||
// {
|
||||
// _regionManager.RequestNavigate("ContentRegion", "SettingWindow");
|
||||
// }
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// _regionManager.RequestNavigate("ContentRegion", value.PremissionPath);
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
SetProperty(ref _selectedChildMenu, value);
|
||||
}
|
||||
//}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -172,31 +172,146 @@ namespace DM_Weight.ViewModels
|
|||
SetProperty(ref _selectedMenu, value);
|
||||
}
|
||||
}
|
||||
#region 父菜单点击事件
|
||||
|
||||
private DelegateCommand<ListBox> _selectionCommon;
|
||||
public DelegateCommand<ListBox> SelectionCommon
|
||||
#endregion
|
||||
private DelegateCommand _selectionCommon;
|
||||
public DelegateCommand SelectionCommon
|
||||
{
|
||||
get => _selectionCommon ?? (_selectionCommon = new DelegateCommand<ListBox>(SelectionMethod));
|
||||
get => _selectionCommon ?? (_selectionCommon = new DelegateCommand(SelectionMethod));
|
||||
}
|
||||
private void SelectionMethod(ListBox viewName)
|
||||
private void SelectionMethod()
|
||||
{
|
||||
SelectedMenu = viewName.SelectedItem as PremissionDm;
|
||||
if (SelectedMenu.PremissionName == "退出")
|
||||
{
|
||||
//SelectedMenu = viewName.SelectedItem as PremissionDm;
|
||||
//if (SelectedMenu.PremissionName == "退出")
|
||||
//{
|
||||
|
||||
_chkFunction.HIKStopDVRRecord();
|
||||
// _chkFunction.HIKStopDVRRecord();
|
||||
// logger.Info($"用户【{Operator?.Nickname}】退出登录");
|
||||
// Operator = null;
|
||||
// Reviewer = null;
|
||||
// _regionManager.RequestNavigate("MainRegion", "LoginWindow");
|
||||
//}
|
||||
//else
|
||||
//{
|
||||
// //SelectedMenu.Children = SelectedMenu.Children;
|
||||
// SelectedChildMenu = SelectedMenu.Children[0];
|
||||
//}
|
||||
logger.Info("开始进入父菜单");
|
||||
if (SelectedMenu != null && SelectedMenu.PremissionName == "退出")
|
||||
{
|
||||
logger.Info($"用户【{Operator?.Nickname}】退出登录");
|
||||
Operator = null;
|
||||
Reviewer = null;
|
||||
_regionManager.RequestNavigate("MainRegion", "LoginWindow");
|
||||
_regionManager.RequestNavigate("MainRegion", "BeforeLogin");
|
||||
}
|
||||
else
|
||||
{
|
||||
//SelectedMenu.Children = SelectedMenu.Children;
|
||||
SelectedChildMenu = SelectedMenu.Children[0];
|
||||
if (!_portUtil.Operate)
|
||||
{
|
||||
_regionManager.RequestNavigate("ContentRegion", SelectedMenu.Children[0].PremissionPath);
|
||||
}
|
||||
}
|
||||
logger.Info("结束父菜单");
|
||||
}
|
||||
|
||||
#region
|
||||
private DelegateCommand _selectionChildCommon;
|
||||
public DelegateCommand SelectionChildCommon
|
||||
{
|
||||
get => _selectionChildCommon ?? (_selectionChildCommon = new DelegateCommand(SelectionChildMethod));
|
||||
}
|
||||
private void SelectionChildMethod()
|
||||
{
|
||||
SelectChildNavigate(SelectedChildMenu);
|
||||
}
|
||||
private void SelectChildNavigate(PremissionDm SelectedChildMenu)
|
||||
{
|
||||
if (!_portUtil.Operate)
|
||||
{
|
||||
if (SelectedChildMenu != null)
|
||||
{
|
||||
if (SelectedChildMenu.PremissionPath.Equals("TakeRecordWindow"))
|
||||
{
|
||||
//定义传参变量
|
||||
NavigationParameters keys = new NavigationParameters();
|
||||
|
||||
//添加参数,键值对格式
|
||||
keys.Add("Type", 2);
|
||||
_regionManager.RequestNavigate("ContentRegion", "MachineRecordWindow", keys);
|
||||
}
|
||||
else if (SelectedChildMenu.PremissionPath.Equals("AddRecordWindow"))
|
||||
{
|
||||
//定义传参变量
|
||||
NavigationParameters keys = new NavigationParameters();
|
||||
|
||||
//添加参数,键值对格式
|
||||
keys.Add("Type", 1);
|
||||
_regionManager.RequestNavigate("ContentRegion", "MachineRecordWindow", keys);
|
||||
}
|
||||
else if (SelectedChildMenu.PremissionPath.Equals("ReturnRecordWindow"))
|
||||
{
|
||||
//定义传参变量
|
||||
NavigationParameters keys = new NavigationParameters();
|
||||
|
||||
//添加参数,键值对格式
|
||||
keys.Add("Type", 3);
|
||||
_regionManager.RequestNavigate("ContentRegion", "MachineRecordWindow", keys);
|
||||
}
|
||||
else if (SelectedChildMenu.PremissionPath.Equals("RetrunEmptyRecordWindow"))
|
||||
{
|
||||
//定义传参变量
|
||||
NavigationParameters keys = new NavigationParameters();
|
||||
|
||||
//添加参数,键值对格式
|
||||
keys.Add("Type", 3);
|
||||
_regionManager.RequestNavigate("ContentRegion", SelectedChildMenu.PremissionPath, keys);
|
||||
}
|
||||
else if (SelectedChildMenu.PremissionPath.Equals("CheckRecordWindow"))
|
||||
{
|
||||
//定义传参变量
|
||||
NavigationParameters keys = new NavigationParameters();
|
||||
|
||||
//添加参数,键值对格式
|
||||
keys.Add("Type", 4);
|
||||
_regionManager.RequestNavigate("ContentRegion", "MachineRecordWindow", keys);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (SelectedChildMenu.PremissionPath.Equals("ReturnDrugWindow") || SelectedChildMenu.PremissionPath.Equals("ReturnDrugWindow2"))
|
||||
{
|
||||
if (ConfigurationManager.AppSettings["returnDrugMode"].ToString().Equals("1"))
|
||||
{
|
||||
_regionManager.RequestNavigate("ContentRegion", "ReturnDrugWindow2");
|
||||
}
|
||||
else
|
||||
{
|
||||
_regionManager.RequestNavigate("ContentRegion", "ReturnDrugWindow");
|
||||
}
|
||||
}
|
||||
else if (SelectedChildMenu.PremissionPath.Equals("SettingMainWindow") || SelectedChildMenu.PremissionPath.Equals("SettingWindow"))
|
||||
{
|
||||
//if (Convert.ToInt32(ConfigurationManager.AppSettings["hasFridge"])>0)
|
||||
//{
|
||||
// _regionManager.RequestNavigate("ContentRegion", "SettingMainWindow");
|
||||
//}
|
||||
//else
|
||||
{
|
||||
_regionManager.RequestNavigate("ContentRegion", "SettingWindow");
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
_regionManager.RequestNavigate("ContentRegion", SelectedChildMenu.PremissionPath);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
public List<PremissionDm> PremissionDmList { get { return _premissionDmList; } set { SetProperty(ref _premissionDmList, value); } }
|
||||
|
||||
public UserList UserList { get { return _userList; } set { SetProperty(ref _userList, value); } }
|
||||
|
@ -406,6 +521,7 @@ namespace DM_Weight.ViewModels
|
|||
PremissionDmList = premissions;
|
||||
SelectedMenu = premissions[0];
|
||||
SelectedChildMenu = premissions[0].Children[0];
|
||||
_regionManager.RequestNavigate("ContentRegion", premissions[0].Children[0].PremissionPath);
|
||||
FindDrawerCount();
|
||||
|
||||
int autoExit = Convert.ToInt32(ConfigurationManager.AppSettings["autoExit"] ?? "0");
|
||||
|
|
|
@ -26,10 +26,11 @@
|
|||
<ColumnDefinition />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Image Grid.Column="0" Margin="30 0 30 0" HorizontalAlignment="Left" Width="Auto" Height="26" Source="/Images/logo.png" />
|
||||
<ListBox Name="ListBoxName" Grid.Column="1" ItemsSource="{Binding PremissionDmList}" HorizontalAlignment="Right" Cursor="Hand">
|
||||
<ListBox Name="ListBoxName" Grid.Column="1" SelectedItem="{Binding SelectedMenu}" ItemsSource="{Binding PremissionDmList}" HorizontalAlignment="Right" Cursor="Hand">
|
||||
<i:Interaction.Triggers>
|
||||
<i:EventTrigger EventName="SelectionChanged">
|
||||
<i:InvokeCommandAction Command="{Binding SelectionCommon}" CommandParameter="{Binding ElementName=ListBoxName}"/>
|
||||
<!--<i:InvokeCommandAction Command="{Binding SelectionCommon}" CommandParameter="{Binding ElementName=ListBoxName}"/>-->
|
||||
<i:InvokeCommandAction Command="{Binding SelectionCommon}"/>
|
||||
</i:EventTrigger>
|
||||
</i:Interaction.Triggers>
|
||||
<ListBox.ItemsPanel>
|
||||
|
@ -55,7 +56,11 @@
|
|||
<materialDesign:Card Grid.Row="0">
|
||||
|
||||
<ListBox ItemsSource="{Binding SelectedMenu.Children}" SelectedItem="{ Binding SelectedChildMenu }" HorizontalAlignment="left" Cursor="Hand">
|
||||
|
||||
<i:Interaction.Triggers>
|
||||
<i:EventTrigger EventName="SelectionChanged">
|
||||
<i:InvokeCommandAction Command="{Binding SelectionChildCommon}"/>
|
||||
</i:EventTrigger>
|
||||
</i:Interaction.Triggers>
|
||||
<ListBox.ItemsPanel>
|
||||
<ItemsPanelTemplate>
|
||||
<WrapPanel Orientation="Horizontal" IsItemsHost="True"/>
|
||||
|
|
Loading…
Reference in New Issue