You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
345 lines
17 KiB
345 lines
17 KiB
3 years ago
|
<UserControl x:Class="ECMonitor.Page.SystemSet.ManageIpc"
|
||
|
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||
|
xmlns:materialDesign="http://materialdesigninxaml.net/winfx/xaml/themes"
|
||
|
xmlns:prism="http://prismlibrary.com/"
|
||
|
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||
|
xmlns:i="http://schemas.microsoft.com/xaml/behaviors"
|
||
|
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||
|
xmlns:mvvm="clr-namespace:ECMonitor.MVVM"
|
||
|
xmlns:names="clr-namespace:ECMonitor.Page.Name"
|
||
|
prism:ViewModelLocator.AutoWireViewModel="True"
|
||
|
mc:Ignorable="d" d:DesignHeight="450" d:DesignWidth="800"
|
||
|
x:Name="ThatPage">
|
||
|
|
||
|
<i:Interaction.Triggers>
|
||
|
<i:EventTrigger EventName="Loaded">
|
||
|
<i:InvokeCommandAction Command="{Binding LoadedCommand}" CommandParameter="{Binding ElementName=ThatPage}" />
|
||
|
</i:EventTrigger>
|
||
|
</i:Interaction.Triggers>
|
||
|
|
||
|
<UserControl.Resources>
|
||
|
|
||
|
<SolidColorBrush x:Key="BtnInActiveBrush" Color="#393d46" />
|
||
|
<SolidColorBrush x:Key="BtnActiveBrush" Color="#478cb6" />
|
||
|
<SolidColorBrush x:Key="DGHeaderBrush" Color="#424242" />
|
||
|
<SolidColorBrush x:Key="DGBorderBrush" Color="{StaticResource PageBorderColor}" Opacity="0.8" />
|
||
|
<SolidColorBrush x:Key="DGLineBrush" Color="{StaticResource PageBorderColor}" Opacity="0.9" />
|
||
|
|
||
|
<Style x:Key="topBtn" TargetType="{x:Type Button}" BasedOn="{StaticResource {x:Type Button}}">
|
||
|
<Setter Property="Margin" Value="0,0,6,0" />
|
||
|
<Setter Property="Background" Value="{StaticResource BtnInActiveBrush}" />
|
||
|
<Setter Property="Foreground" Value="WhiteSmoke" />
|
||
|
<Setter Property="BorderBrush" Value="{StaticResource PageBorderBrush}" />
|
||
|
<Setter Property="BorderThickness" Value="1" />
|
||
|
<Setter Property="Cursor" Value="Hand" />
|
||
|
<Setter Property="HorizontalAlignment" Value="Center" />
|
||
|
<Setter Property="VerticalAlignment" Value="Center" />
|
||
|
<Setter Property="materialDesign:ButtonAssist.CornerRadius" Value="5" />
|
||
|
<Style.Triggers>
|
||
|
<Trigger Property="IsPressed" Value="True">
|
||
|
<Setter Property="Background" Value="{StaticResource BtnActiveBrush}" />
|
||
|
</Trigger>
|
||
|
<Trigger Property="IsMouseOver" Value="True">
|
||
|
<Setter Property="Background" Value="{StaticResource BtnActiveBrush}" />
|
||
|
</Trigger>
|
||
|
</Style.Triggers>
|
||
|
</Style>
|
||
|
<Style x:Key="topBtnPanel" TargetType="{x:Type StackPanel}">
|
||
|
<Setter Property="Orientation" Value="Horizontal" />
|
||
|
<Setter Property="HorizontalAlignment" Value="Center" />
|
||
|
<Setter Property="VerticalAlignment" Value="Center" />
|
||
|
</Style>
|
||
|
<Style x:Key="topBtnImg" TargetType="{x:Type Control}">
|
||
|
<Setter Property="HorizontalAlignment" Value="Center" />
|
||
|
<Setter Property="VerticalAlignment" Value="Center" />
|
||
|
</Style>
|
||
|
<Style x:Key="topBtnTxt" TargetType="{x:Type TextBlock}">
|
||
|
<Setter Property="HorizontalAlignment" Value="Center" />
|
||
|
<Setter Property="VerticalAlignment" Value="Center" />
|
||
|
</Style>
|
||
|
</UserControl.Resources>
|
||
|
|
||
|
<Grid Background="{DynamicResource PageBodyBrush}">
|
||
|
|
||
|
<Grid.RowDefinitions>
|
||
|
<RowDefinition Height="50" />
|
||
|
<RowDefinition Height="3*" />
|
||
|
<RowDefinition Height="2*" />
|
||
|
</Grid.RowDefinitions>
|
||
|
|
||
|
<StackPanel Grid.Row="0" Orientation="Horizontal">
|
||
|
<Button Style="{StaticResource topBtn}" Command="{Binding AddCommand}">
|
||
|
<StackPanel Style="{StaticResource topBtnPanel}">
|
||
|
<materialDesign:PackIcon Kind="AddThick" Style="{StaticResource topBtnImg}" />
|
||
|
<TextBlock Text="添加" Style="{StaticResource topBtnTxt}" />
|
||
|
</StackPanel>
|
||
|
</Button>
|
||
|
<Button Style="{StaticResource topBtn}" Command="{Binding DeleteCommand}">
|
||
|
<StackPanel Style="{StaticResource topBtnPanel}">
|
||
|
<materialDesign:PackIcon Kind="MinusThick" Style="{StaticResource topBtnImg}" />
|
||
|
<TextBlock Text="删除" Style="{StaticResource topBtnTxt}" />
|
||
|
</StackPanel>
|
||
|
</Button>
|
||
|
<Button Style="{StaticResource topBtn}" Command="{Binding SaveCommand}">
|
||
|
<StackPanel Style="{StaticResource topBtnPanel}">
|
||
|
<materialDesign:PackIcon Kind="CheckThick" Style="{StaticResource topBtnImg}" />
|
||
|
<TextBlock Text="保存" Style="{StaticResource topBtnTxt}" />
|
||
|
</StackPanel>
|
||
|
</Button>
|
||
|
<!--<Button Style="{StaticResource topBtn}" Command="{Binding RevokeCommand}">
|
||
|
<StackPanel Style="{StaticResource topBtnPanel}">
|
||
|
<materialDesign:PackIcon Kind="CloseThick" Style="{StaticResource topBtnImg}" />
|
||
|
<TextBlock Text="撤销" Style="{StaticResource topBtnTxt}" />
|
||
|
</StackPanel>
|
||
|
</Button>-->
|
||
|
<Button Style="{StaticResource topBtn}" Command="{Binding RefreshCommand}" Cursor="Hand">
|
||
|
<StackPanel Style="{StaticResource topBtnPanel}">
|
||
|
<materialDesign:PackIcon Kind="Refresh" Style="{StaticResource topBtnImg}" />
|
||
|
<TextBlock Text="刷新" Style="{StaticResource topBtnTxt}" />
|
||
|
</StackPanel>
|
||
|
</Button>
|
||
|
<!--<Button Style="{StaticResource topBtn}" Command="{Binding ImportCommand}">
|
||
|
<StackPanel Style="{StaticResource topBtnPanel}">
|
||
|
<materialDesign:PackIcon Kind="ArrowDownThick" Style="{StaticResource topBtnImg}" />
|
||
|
<TextBlock Text="导入" Style="{StaticResource topBtnTxt}" />
|
||
|
</StackPanel>
|
||
|
</Button>
|
||
|
<Button Style="{StaticResource topBtn}" Command="{Binding ExportCommand}">
|
||
|
<StackPanel Style="{StaticResource topBtnPanel}">
|
||
|
<materialDesign:PackIcon Kind="ArrowUpThick" Style="{StaticResource topBtnImg}" />
|
||
|
<TextBlock Text="导出" Style="{StaticResource topBtnTxt}" />
|
||
|
</StackPanel>
|
||
|
</Button>-->
|
||
|
</StackPanel>
|
||
|
|
||
|
<DockPanel Grid.Row="1">
|
||
|
<DataGrid x:Name="InfoGrid" ItemsSource="{Binding InfoList,Mode=TwoWay }">
|
||
|
|
||
|
<DataGrid.Style>
|
||
|
<Style TargetType="DataGrid" BasedOn="{StaticResource MaterialDesignDataGrid}">
|
||
|
<Setter Property="Background" Value="{StaticResource PageBodyBrush}" />
|
||
|
<Setter Property="GridLinesVisibility" Value="All" />
|
||
|
<Setter Property="HorizontalGridLinesBrush" Value="{StaticResource DGLineBrush}" />
|
||
|
<Setter Property="VerticalGridLinesBrush" Value="{StaticResource DGLineBrush}" />
|
||
|
<Setter Property="BorderBrush" Value="{StaticResource DGLineBrush}" />
|
||
|
<Setter Property="BorderThickness" Value="1" />
|
||
|
<Setter Property="HeadersVisibility" Value="Column" />
|
||
|
<Setter Property="ScrollViewer.VerticalScrollBarVisibility" Value="Auto" />
|
||
|
<Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Auto" />
|
||
|
<Setter Property="AutoGenerateColumns" Value="False" />
|
||
|
<Setter Property="CanUserAddRows" Value="False" />
|
||
|
<Setter Property="CanUserDeleteRows" Value="False" />
|
||
|
<Setter Property="CanUserResizeRows" Value="False" />
|
||
|
<Setter Property="CanUserResizeColumns" Value="True" />
|
||
|
<Setter Property="CanUserReorderColumns" Value="False" />
|
||
|
<Setter Property="CanUserSortColumns" Value="False" />
|
||
|
</Style>
|
||
|
</DataGrid.Style>
|
||
|
|
||
|
<DataGrid.RowHeaderStyle>
|
||
|
<Style TargetType="DataGridRowHeader" BasedOn="{StaticResource MaterialDesignDataGridRowHeader}">
|
||
|
<Setter Property="HorizontalContentAlignment" Value="Center" />
|
||
|
<Setter Property="VerticalContentAlignment" Value="Center" />
|
||
|
</Style>
|
||
|
</DataGrid.RowHeaderStyle>
|
||
|
|
||
|
<DataGrid.ColumnHeaderStyle>
|
||
|
<Style TargetType="DataGridColumnHeader" BasedOn="{StaticResource MaterialDesignDataGridColumnHeader}">
|
||
|
<Setter Property="Background" Value="{StaticResource DGHeaderBrush}" />
|
||
|
<Setter Property="HorizontalContentAlignment" Value="Center" />
|
||
|
</Style>
|
||
|
</DataGrid.ColumnHeaderStyle>
|
||
|
|
||
|
<i:Interaction.Triggers>
|
||
|
<i:EventTrigger EventName="CellEditEnding">
|
||
|
<mvvm:ExtendEventCommand Command="{Binding UpdateCommand}" />
|
||
|
</i:EventTrigger>
|
||
|
</i:Interaction.Triggers>
|
||
|
|
||
|
<DataGrid.Columns>
|
||
|
|
||
|
<materialDesign:DataGridTextColumn
|
||
|
Header="序号" Width="60" IsReadOnly="True"
|
||
|
Binding="{Binding Number, UpdateSourceTrigger=PropertyChanged}"
|
||
|
ElementStyle="{StaticResource MaterialDesignDataGridTextColumnStyle}"
|
||
|
EditingElementStyle="{StaticResource MaterialDesignDataGridTextColumnEditingStyle}">
|
||
|
</materialDesign:DataGridTextColumn>
|
||
|
|
||
|
<!--<DataGridTextColumn
|
||
|
Binding="{Binding IpcId}" Header="编号" Width="60"
|
||
|
ElementStyle="{StaticResource MaterialDesignDataGridTextColumnStyle}"
|
||
|
EditingElementStyle="{StaticResource MaterialDesignDataGridTextColumnEditingStyle}">
|
||
|
</DataGridTextColumn>-->
|
||
|
|
||
|
<materialDesign:DataGridTextColumn
|
||
|
Header="名称" Width="120"
|
||
|
ElementStyle="{StaticResource MaterialDesignDataGridTextColumnStyle}"
|
||
|
EditingElementStyle="{StaticResource MaterialDesignDataGridTextColumnEditingStyle}">
|
||
|
<DataGridTextColumn.Binding>
|
||
|
<Binding Path="IpcName" UpdateSourceTrigger="PropertyChanged">
|
||
|
<Binding.ValidationRules>
|
||
|
<mvvm:VerifyRule Type="{x:Static mvvm:VerifyRuleType.NotEmpty}" ValidatesOnTargetUpdated="True" />
|
||
|
</Binding.ValidationRules>
|
||
|
</Binding>
|
||
|
</DataGridTextColumn.Binding>
|
||
|
</materialDesign:DataGridTextColumn>
|
||
|
|
||
|
<materialDesign:DataGridComboBoxColumn
|
||
|
Header="录像机" Width="120"
|
||
|
ItemsSourceBinding="{Binding DataContext.NvrNameList, RelativeSource={RelativeSource FindAncestor, AncestorType=UserControl}}">
|
||
|
<DataGridComboBoxColumn.SelectedValueBinding>
|
||
|
<Binding Path="NvrName" UpdateSourceTrigger="PropertyChanged">
|
||
|
<Binding.ValidationRules>
|
||
|
<mvvm:VerifyRule Type="{x:Static mvvm:VerifyRuleType.NotEmpty}" ValidatesOnTargetUpdated="True" />
|
||
|
</Binding.ValidationRules>
|
||
|
</Binding>
|
||
|
</DataGridComboBoxColumn.SelectedValueBinding>
|
||
|
</materialDesign:DataGridComboBoxColumn>
|
||
|
|
||
|
<materialDesign:DataGridTextColumn
|
||
|
Header="类型" Width="90"
|
||
|
Binding="{Binding IpcType, UpdateSourceTrigger=PropertyChanged}"
|
||
|
ElementStyle="{StaticResource MaterialDesignDataGridTextColumnStyle}"
|
||
|
EditingElementStyle="{StaticResource MaterialDesignDataGridTextColumnEditingStyle}">
|
||
|
</materialDesign:DataGridTextColumn>
|
||
|
|
||
|
<materialDesign:DataGridTextColumn
|
||
|
Header="地址" Width="120"
|
||
|
ElementStyle="{StaticResource MaterialDesignDataGridTextColumnStyle}"
|
||
|
EditingElementStyle="{StaticResource MaterialDesignDataGridTextColumnEditingStyle}">
|
||
|
<DataGridTextColumn.Binding>
|
||
|
<Binding Path="IpcIp" UpdateSourceTrigger="PropertyChanged">
|
||
|
<Binding.ValidationRules>
|
||
|
<mvvm:VerifyRule Type="{x:Static mvvm:VerifyRuleType.IP}" ValidatesOnTargetUpdated="True" />
|
||
|
</Binding.ValidationRules>
|
||
|
</Binding>
|
||
|
</DataGridTextColumn.Binding>
|
||
|
</materialDesign:DataGridTextColumn>
|
||
|
|
||
|
<materialDesign:DataGridTextColumn
|
||
|
Header="用户姓名" Width="120"
|
||
|
ElementStyle="{StaticResource MaterialDesignDataGridTextColumnStyle}"
|
||
|
EditingElementStyle="{StaticResource MaterialDesignDataGridTextColumnEditingStyle}">
|
||
|
<DataGridTextColumn.Binding>
|
||
|
<Binding Path="UserName" UpdateSourceTrigger="PropertyChanged">
|
||
|
<Binding.ValidationRules>
|
||
|
<mvvm:VerifyRule Type="{x:Static mvvm:VerifyRuleType.NotEmpty}" ValidatesOnTargetUpdated="True" />
|
||
|
</Binding.ValidationRules>
|
||
|
</Binding>
|
||
|
</DataGridTextColumn.Binding>
|
||
|
</materialDesign:DataGridTextColumn>
|
||
|
|
||
|
<materialDesign:DataGridTextColumn
|
||
|
Header="用户密码" Width="120"
|
||
|
ElementStyle="{StaticResource MaterialDesignDataGridTextColumnStyle}"
|
||
|
EditingElementStyle="{StaticResource MaterialDesignDataGridTextColumnEditingStyle}">
|
||
|
<DataGridTextColumn.Binding>
|
||
|
<Binding Path="UserPwd" UpdateSourceTrigger="PropertyChanged">
|
||
|
<Binding.ValidationRules>
|
||
|
<mvvm:VerifyRule Type="{x:Static mvvm:VerifyRuleType.NotEmpty}" ValidatesOnTargetUpdated="True" />
|
||
|
</Binding.ValidationRules>
|
||
|
</Binding>
|
||
|
</DataGridTextColumn.Binding>
|
||
|
</materialDesign:DataGridTextColumn>
|
||
|
|
||
|
<materialDesign:DataGridTextColumn
|
||
|
Header="主码流地址" Width="*"
|
||
|
Binding="{Binding RtspMain, UpdateSourceTrigger=PropertyChanged}"
|
||
|
ElementStyle="{StaticResource MaterialDesignDataGridTextColumnStyle}"
|
||
|
EditingElementStyle="{StaticResource MaterialDesignDataGridTextColumnEditingStyle}">
|
||
|
</materialDesign:DataGridTextColumn>
|
||
|
|
||
|
<materialDesign:DataGridTextColumn
|
||
|
Header="子码流地址" Width="*"
|
||
|
Binding="{Binding RtspSub, UpdateSourceTrigger=PropertyChanged}"
|
||
|
ElementStyle="{StaticResource MaterialDesignDataGridTextColumnStyle}"
|
||
|
EditingElementStyle="{StaticResource MaterialDesignDataGridTextColumnEditingStyle}">
|
||
|
</materialDesign:DataGridTextColumn>
|
||
|
|
||
|
<!--<DataGridTextColumn
|
||
|
Binding="{Binding IpcPosition}" Header="经纬度" Width="*"
|
||
|
ElementStyle="{StaticResource MaterialDesignDataGridTextColumnStyle}"
|
||
|
EditingElementStyle="{StaticResource MaterialDesignDataGridTextColumnEditingStyle}">
|
||
|
</DataGridTextColumn>-->
|
||
|
|
||
|
<DataGridCheckBoxColumn
|
||
|
Header="启用" Width="60"
|
||
|
Binding="{Binding IpcEnableBool, UpdateSourceTrigger=PropertyChanged}"
|
||
|
ElementStyle="{StaticResource MaterialDesignDataGridCheckBoxColumnStyle}"
|
||
|
EditingElementStyle="{StaticResource MaterialDesignDataGridCheckBoxColumnEditingStyle}">
|
||
|
</DataGridCheckBoxColumn>
|
||
|
|
||
|
<materialDesign:DataGridTextColumn
|
||
|
Header="安装位置" Width="*"
|
||
|
Binding="{Binding IpcAddr, UpdateSourceTrigger=PropertyChanged}"
|
||
|
ElementStyle="{StaticResource MaterialDesignDataGridTextColumnStyle}"
|
||
|
EditingElementStyle="{StaticResource MaterialDesignDataGridTextColumnEditingStyle}">
|
||
|
</materialDesign:DataGridTextColumn>
|
||
|
|
||
|
<!--<DataGridCheckBoxColumn
|
||
|
Binding="{Binding IsSelected, UpdateSourceTrigger=PropertyChanged}"
|
||
|
ElementStyle="{StaticResource MaterialDesignDataGridCheckBoxColumnStyle}"
|
||
|
EditingElementStyle="{StaticResource MaterialDesignDataGridCheckBoxColumnEditingStyle}">
|
||
|
<DataGridCheckBoxColumn.Header>
|
||
|
<Border Background="Transparent">
|
||
|
<CheckBox />
|
||
|
|
||
|
<CheckBox IsChecked="{Binding Data.IsAllItems1Selected, Source={StaticResource DataContextProxy}}" />
|
||
|
</Border>
|
||
|
</DataGridCheckBoxColumn.Header>
|
||
|
<DataGridCheckBoxColumn.HeaderStyle>
|
||
|
<Style
|
||
|
TargetType="{x:Type DataGridColumnHeader}"
|
||
|
BasedOn="{StaticResource MaterialDesignDataGridColumnHeader}">
|
||
|
<Setter Property="HorizontalContentAlignment" Value="Center" />
|
||
|
</Style>
|
||
|
</DataGridCheckBoxColumn.HeaderStyle>
|
||
|
</DataGridCheckBoxColumn>
|
||
|
|
||
|
<DataGridTextColumn
|
||
|
Binding="{Binding IpcImage}"
|
||
|
Header="IpcImage"
|
||
|
ElementStyle="{StaticResource MaterialDesignDataGridTextColumnStyle}"
|
||
|
EditingElementStyle="{StaticResource MaterialDesignDataGridTextColumnEditingStyle}">
|
||
|
</DataGridTextColumn>
|
||
|
|
||
|
<DataGridTextColumn
|
||
|
Binding="{Binding IpcX}"
|
||
|
Header="IpcX"
|
||
|
ElementStyle="{StaticResource MaterialDesignDataGridTextColumnStyle}"
|
||
|
EditingElementStyle="{StaticResource MaterialDesignDataGridTextColumnEditingStyle}">
|
||
|
</DataGridTextColumn>
|
||
|
|
||
|
<DataGridTextColumn
|
||
|
Binding="{Binding IpcY}"
|
||
|
Header="IpcY"
|
||
|
ElementStyle="{StaticResource MaterialDesignDataGridTextColumnStyle}"
|
||
|
EditingElementStyle="{StaticResource MaterialDesignDataGridTextColumnEditingStyle}">
|
||
|
</DataGridTextColumn>
|
||
|
|
||
|
<DataGridTextColumn
|
||
|
Binding="{Binding OnvifAddr}" Header="Onvif地址"
|
||
|
ElementStyle="{StaticResource MaterialDesignDataGridTextColumnStyle}"
|
||
|
EditingElementStyle="{StaticResource MaterialDesignDataGridTextColumnEditingStyle}">
|
||
|
</DataGridTextColumn>
|
||
|
|
||
|
<DataGridTextColumn
|
||
|
Binding="{Binding MediaAddr}" Header="Media地址"
|
||
|
ElementStyle="{StaticResource MaterialDesignDataGridTextColumnStyle}"
|
||
|
EditingElementStyle="{StaticResource MaterialDesignDataGridTextColumnEditingStyle}">
|
||
|
</DataGridTextColumn>
|
||
|
|
||
|
<DataGridTextColumn
|
||
|
Binding="{Binding PtzAddr}" Header="Ptz地址"
|
||
|
ElementStyle="{StaticResource MaterialDesignDataGridTextColumnStyle}"
|
||
|
EditingElementStyle="{StaticResource MaterialDesignDataGridTextColumnEditingStyle}">
|
||
|
</DataGridTextColumn>-->
|
||
|
</DataGrid.Columns>
|
||
|
</DataGrid>
|
||
|
</DockPanel>
|
||
|
|
||
|
<ContentControl Grid.Row="2"
|
||
|
prism:RegionManager.RegionName="{x:Static names:RegionsName.SystemSetManageIpcCenter}" />
|
||
|
</Grid>
|
||
|
</UserControl>
|