2025-08-15 15:25:44 +08:00

757 lines
47 KiB
XML

<UserControl
x:Class="DI_Electrical.Views.Dialog.DialogSignalManagements.DialogSignalManagement"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:CustomControl="clr-namespace:DI_Electrical.Views.CustomControl"
xmlns:StyleSelectors="clr-namespace:DI_Electrical.Style"
xmlns:cvt="clr-namespace:DI_Electrical.Helper.Converter"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:i="http://schemas.microsoft.com/xaml/behaviors"
xmlns:local="clr-namespace:DI_Electrical.Views.Dialog.DialogSignalManagements"
xmlns:local2="clr-namespace:DI_Electrical.Views"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:prism="http://prismlibrary.com/"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:telerik="http://schemas.telerik.com/2008/xaml/presentation"
d:DesignHeight="450"
d:DesignWidth="800"
mc:Ignorable="d">
<prism:Dialog.WindowStyle>
<Style TargetType="Window">
<Setter Property="Width" Value="{Binding Source={x:Static SystemParameters.WorkArea}, Path=Width}" />
<Setter Property="Height" Value="{Binding Source={x:Static SystemParameters.WorkArea}, Path=Height}" />
<Setter Property="WindowState" Value="Normal" />
<Setter Property="WindowStyle" Value="None" />
<Setter Property="ResizeMode" Value="NoResize" />
</Style>
</prism:Dialog.WindowStyle>
<UserControl.Resources>
<ResourceDictionary>
<!-- 转换器 -->
<cvt:RadGridViewRowToBoolConverter x:Key="RowToBoolCvt" />
<cvt:CollectionToStringConverter x:Key="CollectionToStringConverter" />
<!-- 模版样式 -->
<DataTemplate x:Key="CellTemplate1">
<TextBlock Text="{Binding WHCPUs, Converter={StaticResource CollectionToStringConverter}}" TextTrimming="CharacterEllipsis" />
</DataTemplate>
<DataTemplate x:Key="CellEditTemplate1">
<CustomControl:MultiSelectSearchComboBox
x:Name="MultiSelectSearchComboBox1"
Width="auto"
Height="auto"
Delimiter="|"
DisplayMemberPath="DataItemName"
IsSelectAllActive="True"
ItemsSource="{Binding DataContext.WHCPUs, RelativeSource={RelativeSource AncestorType=telerik:RadTreeListView}}"
SelectedItems="{Binding WHCPUs}"
SelectedValuePath="DataItemCode" />
</DataTemplate>
<DataTemplate x:Key="CellTemplate2">
<TextBlock Text="{Binding ECRCPUs, Converter={StaticResource CollectionToStringConverter}}" />
</DataTemplate>
<DataTemplate x:Key="CellEditTemplate2">
<CustomControl:MultiSelectSearchComboBox
x:Name="MultiSelectSearchComboBox1"
Width="auto"
Height="auto"
Delimiter="|"
DisplayMemberPath="DataItemName"
IsSelectAllActive="True"
ItemsSource="{Binding DataContext.ECRCPUs, RelativeSource={RelativeSource AncestorType=telerik:RadTreeListView}}"
SelectedItems="{Binding ECRCPUs}"
SelectedValuePath="DataItemCode" />
</DataTemplate>
<DataTemplate x:Key="CellTemplate3">
<TextBlock Text="{Binding ShipOfficeCPUs, Converter={StaticResource CollectionToStringConverter}}" />
</DataTemplate>
<DataTemplate x:Key="CellEditTemplate3">
<CustomControl:MultiSelectSearchComboBox
x:Name="MultiSelectSearchComboBox1"
Width="auto"
Height="auto"
Delimiter="|"
DisplayMemberPath="DataItemName"
IsSelectAllActive="True"
ItemsSource="{Binding DataContext.ShipOfficeCPUs, RelativeSource={RelativeSource AncestorType=telerik:RadTreeListView}}"
SelectedItems="{Binding ShipOfficeCPUs}"
SelectedValuePath="DataItemCode" />
</DataTemplate>
<Style x:Key="buttoustyle1" TargetType="telerik:RadButton">
<Style.Triggers>
<DataTrigger Binding="{Binding Content, ElementName=myButton}" Value="显示全部">
<Setter Property="IsEnabled" Value="False" />
</DataTrigger>
</Style.Triggers>
</Style>
<!-- 定义展开按钮样式 -->
<Style x:Key="ExpandButtonStyle" TargetType="telerik:GridViewToggleButton" />
<Style x:Key="cellstyle1" TargetType="{x:Type telerik:GridViewRow}">
<Setter Property="Background" Value="White" />
</Style>
<Style x:Key="ToDeleteStatusStyle" TargetType="telerik:GridViewRow">
<Setter Property="Foreground" Value="#db9fa9" />
</Style>
<Style x:Key="NewStatusStyle" TargetType="telerik:GridViewRow">
<Setter Property="Foreground" Value="#fc7c2c" />
</Style>
<Style x:Key="UsedStatusStyle" TargetType="telerik:GridViewRow">
<Setter Property="Foreground" Value="#49ac64" />
</Style>
<Style x:Key="ConfirmedStatusStyle" TargetType="telerik:GridViewRow">
<Setter Property="Foreground" Value="DarkGray" />
</Style>
<Style x:Key="ReopenStatusStyle" TargetType="telerik:GridViewRow">
<Setter Property="Foreground" Value="#1c3df5" />
</Style>
<Style x:Key="deletedStatusStyle" TargetType="telerik:GridViewRow">
<Setter Property="Foreground" Value="DarkGray" />
</Style>
<cvt:StatusToColourConverter x:Key="converter" />
<StyleSelectors:ConditionalStyleSelector x:Key="selector" ConditionConverter="{StaticResource converter}">
<StyleSelectors:ConditionalStyleSelector.Rules>
<StyleSelectors:ConditionalStyleRule Style="{StaticResource ToDeleteStatusStyle}">
<StyleSelectors:ConditionalStyleRule.Value>
<sys:String>ToDelete</sys:String>
</StyleSelectors:ConditionalStyleRule.Value>
</StyleSelectors:ConditionalStyleRule>
<StyleSelectors:ConditionalStyleRule Style="{StaticResource NewStatusStyle}">
<StyleSelectors:ConditionalStyleRule.Value>
<sys:String>New</sys:String>
</StyleSelectors:ConditionalStyleRule.Value>
</StyleSelectors:ConditionalStyleRule>
<StyleSelectors:ConditionalStyleRule Style="{StaticResource UsedStatusStyle}">
<StyleSelectors:ConditionalStyleRule.Value>
<sys:String>Used</sys:String>
</StyleSelectors:ConditionalStyleRule.Value>
</StyleSelectors:ConditionalStyleRule>
<StyleSelectors:ConditionalStyleRule Style="{StaticResource ConfirmedStatusStyle}">
<StyleSelectors:ConditionalStyleRule.Value>
<sys:String>Confirmed</sys:String>
</StyleSelectors:ConditionalStyleRule.Value>
</StyleSelectors:ConditionalStyleRule>
<StyleSelectors:ConditionalStyleRule Style="{StaticResource ReopenStatusStyle}">
<StyleSelectors:ConditionalStyleRule.Value>
<sys:String>Reopen</sys:String>
</StyleSelectors:ConditionalStyleRule.Value>
</StyleSelectors:ConditionalStyleRule>
<StyleSelectors:ConditionalStyleRule Style="{StaticResource deletedStatusStyle}">
<StyleSelectors:ConditionalStyleRule.Value>
<sys:String>deleted</sys:String>
</StyleSelectors:ConditionalStyleRule.Value>
</StyleSelectors:ConditionalStyleRule>
</StyleSelectors:ConditionalStyleSelector.Rules>
</StyleSelectors:ConditionalStyleSelector>
</ResourceDictionary>
</UserControl.Resources>
<telerik:RadBusyIndicator BusyContent="{Binding BusyContent}" IsBusy="{Binding IsBusy}">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="auto" />
<RowDefinition Height="auto" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<local2:customWindowTitleBar />
<Grid Grid.Row="1" Background="#5d6b99">
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition Width="1*" />
</Grid.ColumnDefinitions>
<TextBlock
Grid.Column="0"
Margin="5,0,0,0"
Style="{StaticResource sysLabel}"
Text="{Binding pojectName}" />
<StackPanel Grid.Column="1" Orientation="Horizontal">
<TextBlock
Width="200"
Style="{StaticResource sysLabel}"
Text="{Binding count}" />
<CustomControl:IconButton
Margin="5"
Command="{Binding HeadButtonCmd}"
CommandParameter="保存"
Content="保存"
FontSize="14"
Foreground="Black"
IconData="M13,3 L3,3 L3,21 L21,21 L21,11 M15,3 L15,8 L21,8 M7,13 L11,17 L17,7"
IconPlacement="Left"
IconSize="16" />
<CustomControl:IconButton
Margin="5"
Command="{Binding HeadButtonCmd}"
CommandParameter="退出"
Content="退出"
FontSize="14"
Foreground="Black"
IconData="M12,3 L12,9 M12,21 L12,15 M15,18 L21,12 L15,6 M9,6 L3,12 L9,18"
IconPlacement="Left"
IconSize="16" />
<CustomControl:IconButton
Margin="5"
Command="{Binding HeadButtonCmd}"
CommandParameter="通知信息"
Content="通知信息"
FontSize="14"
Foreground="Black"
IconData="M12 2C8 2 6 5 6 9L4 18H20L18 9C18 5 16 2 12 2M12 22C10.9 22 10 21.1 10 20H14C14 21.1 13.1 22 12 22Z M12 5C15 5 16 7 16 9L17 16H7L8 9C8 7 9 5 12 5 M12 12L12 14 M12 8L12 10"
IconPlacement="Left"
IconSize="16" />
<CustomControl:IconButton
Margin="5"
Command="{Binding HeadButtonCmd}"
CommandParameter="历史记录"
Content="历史记录"
FontSize="14"
Foreground="Black"
IconData="M12,3 L12,9 M12,21 L12,15 M15,18 L21,12 L15,6 M9,6 L3,12 L9,18"
IconPlacement="Left"
IconSize="16" />
<CustomControl:IconButton
x:Name="myButton"
Margin="5"
Command="{Binding HeadButtonCmd}"
CommandParameter="回收站"
Content="{Binding ButtonContent}"
FontSize="14"
Foreground="Black"
IconData="M5 6L6 20H18L19 6 M3 6H21 M8 6L9 3H15L16 6"
IconPlacement="Left"
IconSize="16" />
<StackPanel Margin="5" Orientation="Horizontal">
<TextBox
Grid.Row="7"
Width="120"
VerticalContentAlignment="Center"
Text="{Binding SearchText}" />
<CustomControl:IconButton
Command="{Binding HeadButtonCmd}"
CommandParameter="搜索框"
Content=""
Foreground="Black"
IconData="M9.5,3 C13.09,3 16,5.91 16,9.5 C16,11.11 15.41,12.59 14.44,13.73 L14.71,14 L20.5,19.79 L19.79,20.5 L14,14.71 L13.73,14.44 C12.59,15.41 11.11,16 9.5,16 C5.91,16 3,13.09 3,9.5 C3,5.91 5.91,3 9.5,3 M9.5,5 C7,5 5,7 5,9.5 C5,12 7,14 9.5,14 C12,14 14,12 14,9.5 C14,7 12,5 9.5,5"
IconSize="16" />
</StackPanel>
</StackPanel>
</Grid>
<Grid Grid.Row="2" Background="#5d6b99">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="12*" />
<ColumnDefinition Width="1*" />
</Grid.ColumnDefinitions>
<!-- test -->
<telerik:RadTreeListView
Name="RadGridView1"
Grid.Row="2"
telerik:StyleManager.Theme="Office_Blue"
AutoGenerateColumns="False"
EnableColumnGroupsVirtualization="True"
EnableColumnVirtualization="True"
EnableRowVirtualization="True"
HierarchyColumnIndex="1"
HierarchyExpandButtonStyle="{StaticResource ExpandButtonStyle}"
HierarchyIndent="0"
IsExpandableBinding="{Binding IsExpandable}"
IsExpandedBinding="{Binding IsExpanded, Mode=TwoWay}"
IsFilteringAllowed="False"
IsReadOnly="False"
ItemsSource="{Binding smInfosView, Mode=TwoWay}"
LeftFrozenColumnCount="4"
RowIndicatorVisibility="Collapsed"
RowStyleSelector="{StaticResource selector}"
SelectedItem="{Binding SelectedSmInfo}"
SelectionMode="Single"
ShowGroupPanel="False">
<i:Interaction.Triggers>
<i:EventTrigger EventName="CellEditEnded">
<i:InvokeCommandAction Command="{Binding EditEndCmd}" CommandParameter="{Binding EventArgs}" />
</i:EventTrigger>
<i:EventTrigger EventName="RowLoaded">
<i:InvokeCommandAction Command="{Binding RowLoadedCmd}" CommandParameter="{Binding EventArgs}" />
</i:EventTrigger>
</i:Interaction.Triggers>
<telerik:RadTreeListView.ColumnGroups>
<telerik:GridViewColumnGroup Name="Range" Header="Range" />
<telerik:GridViewColumnGroup Name="Alarm" Header="Alarm" />
<telerik:GridViewColumnGroup Name="SENSOR" Header="SENSOR" />
<telerik:GridViewColumnGroup Name="GRP." Header="GRP." />
<telerik:GridViewColumnGroup Name="AMS" Header="AMS" />
<telerik:GridViewColumnGroup Name="VDR" Header="VDR" />
<telerik:GridViewColumnGroup Name="W/H" Header="W/H" />
<telerik:GridViewColumnGroup Name="ECR" Header="ECR" />
<telerik:GridViewColumnGroup Name="SHIP OFFICE" Header="SHIP OFFICE" />
</telerik:RadTreeListView.ColumnGroups>
<!-- 层级结构定义 -->
<telerik:RadTreeListView.ChildTableDefinitions>
<telerik:TreeListViewTableDefinition ItemsSource="{Binding ChildSignals}" />
</telerik:RadTreeListView.ChildTableDefinitions>
<telerik:RadTreeListView.Columns>
<!-- 展开行详情列“+”
<telerik:GridViewToggleRowDetailsColumn Header=""/>
-->
<telerik:GridViewDataColumn
DataMemberBinding="{Binding serialNumber}"
Header="序号"
IsReadOnlyBinding="{Binding Converter={StaticResource RowToBoolCvt}, RelativeSource={RelativeSource AncestorType={x:Type telerik:GridViewRow}}, ConverterParameter=序号}">
<telerik:GridViewDataColumn.CellStyle>
<Style TargetType="{x:Type telerik:GridViewCell}">
<Setter Property="Background" Value="#5d6b99" />
<Setter Property="Foreground" Value="White" />
<Setter Property="BorderBrush" Value="Transparent" />
<Setter Property="BorderThickness" Value="0" />
</Style>
</telerik:GridViewDataColumn.CellStyle>
</telerik:GridViewDataColumn>
<telerik:GridViewDataColumn
DataMemberBinding="{Binding type}"
Header="类型"
IsReadOnlyBinding="{Binding Converter={StaticResource RowToBoolCvt}, RelativeSource={RelativeSource AncestorType={x:Type telerik:GridViewRow}}, ConverterParameter=类型}">
<telerik:GridViewDataColumn.CellStyle>
<Style TargetType="{x:Type telerik:GridViewCell}">
<Setter Property="Background" Value="#5d6b99" />
<Setter Property="Foreground" Value="White" />
</Style>
</telerik:GridViewDataColumn.CellStyle>
</telerik:GridViewDataColumn>
<telerik:GridViewDataColumn
DataMemberBinding="{Binding Group_Name}"
Header="CH.NO"
IsReadOnlyBinding="{Binding Converter={StaticResource RowToBoolCvt}, RelativeSource={RelativeSource AncestorType={x:Type telerik:GridViewRow}}, ConverterParameter=CH.NO}">
<telerik:GridViewDataColumn.CellStyle>
<Style TargetType="{x:Type telerik:GridViewCell}">
<Setter Property="Background" Value="#FF297ACE" />
<Setter Property="Background" Value="#5d6b99" />
<Setter Property="Foreground" Value="White" />
<Setter Property="BorderBrush" Value="Transparent" />
<Setter Property="BorderThickness" Value="0" />
</Style>
</telerik:GridViewDataColumn.CellStyle>
</telerik:GridViewDataColumn>
<telerik:GridViewDataColumn
Width="200"
DataMemberBinding="{Binding Group_Desc_EN}"
Header="英文描述"
IsReadOnlyBinding="{Binding Converter={StaticResource RowToBoolCvt}, RelativeSource={RelativeSource AncestorType={x:Type telerik:GridViewRow}}, ConverterParameter=英文描述}" />
<telerik:GridViewDataColumn
Width="120"
DataMemberBinding="{Binding Group_Desc}"
Header="中文描述"
IsReadOnlyBinding="{Binding Converter={StaticResource RowToBoolCvt}, RelativeSource={RelativeSource AncestorType={x:Type telerik:GridViewRow}}, ConverterParameter=中文描述}" />
<telerik:GridViewComboBoxColumn
DataMemberBinding="{Binding BelongingMajor}"
Header="归属专业"
IsReadOnlyBinding="{Binding Converter={StaticResource RowToBoolCvt}, RelativeSource={RelativeSource AncestorType={x:Type telerik:GridViewRow}}, ConverterParameter=归属专业}"
ItemsSource="{Binding DataContext.BelongingMajors, RelativeSource={RelativeSource AncestorType=telerik:RadTreeListView}}" />
<telerik:GridViewComboBoxColumn
DataMemberBinding="{Binding GroupOther}"
DisplayMemberPath="DataItemName"
Header="组别"
IsReadOnlyBinding="{Binding Converter={StaticResource RowToBoolCvt}, RelativeSource={RelativeSource AncestorType={x:Type telerik:GridViewRow}}, ConverterParameter=组别}"
ItemsSource="{Binding DataContext.GroupOthers, RelativeSource={RelativeSource AncestorType=telerik:RadTreeListView}}"
SelectedValueMemberPath="DataItemName" />
<telerik:GridViewDataColumn
DataMemberBinding="{Binding Signal_SeqNo}"
Header="编码"
IsReadOnlyBinding="{Binding Converter={StaticResource RowToBoolCvt}, RelativeSource={RelativeSource AncestorType={x:Type telerik:GridViewRow}}, ConverterParameter=编码}" />
<telerik:GridViewDataColumn
DataMemberBinding="{Binding Code}"
Header="Code"
IsReadOnlyBinding="{Binding Converter={StaticResource RowToBoolCvt}, RelativeSource={RelativeSource AncestorType={x:Type telerik:GridViewRow}}, ConverterParameter=Code}" />
<telerik:GridViewComboBoxColumn
DataMemberBinding="{Binding InOrOut}"
Header="IO类型"
IsReadOnlyBinding="{Binding Converter={StaticResource RowToBoolCvt}, RelativeSource={RelativeSource AncestorType={x:Type telerik:GridViewRow}}, ConverterParameter=IO类型}"
ItemsSource="{Binding DataContext.InOrOuts, RelativeSource={RelativeSource AncestorType=telerik:RadTreeListView}}" />
<telerik:GridViewComboBoxColumn
DataMemberBinding="{Binding IO_Type}"
Header="信号类型"
IsReadOnlyBinding="{Binding Converter={StaticResource RowToBoolCvt}, RelativeSource={RelativeSource AncestorType={x:Type telerik:GridViewRow}}, ConverterParameter=信号类型}"
ItemsSource="{Binding DataContext.IO_Types, RelativeSource={RelativeSource AncestorType=telerik:RadTreeListView}}" />
<telerik:GridViewDataColumn
ColumnGroupName="Range"
DataMemberBinding="{Binding Range_Min}"
Header="Min"
IsReadOnlyBinding="{Binding Converter={StaticResource RowToBoolCvt}, RelativeSource={RelativeSource AncestorType={x:Type telerik:GridViewRow}}, ConverterParameter=Min}" />
<telerik:GridViewDataColumn
ColumnGroupName="Range"
DataMemberBinding="{Binding Range_Max}"
Header="Max"
IsReadOnlyBinding="{Binding Converter={StaticResource RowToBoolCvt}, RelativeSource={RelativeSource AncestorType={x:Type telerik:GridViewRow}}, ConverterParameter=Max}" />
<telerik:GridViewDataColumn
DataMemberBinding="{Binding Unit}"
Header="单位"
IsReadOnlyBinding="{Binding Converter={StaticResource RowToBoolCvt}, RelativeSource={RelativeSource AncestorType={x:Type telerik:GridViewRow}}, ConverterParameter=单位}" />
<telerik:GridViewDataColumn
ColumnGroupName="Alarm"
DataMemberBinding="{Binding Alarm_LL}"
Header="L.L"
IsReadOnlyBinding="{Binding Converter={StaticResource RowToBoolCvt}, RelativeSource={RelativeSource AncestorType={x:Type telerik:GridViewRow}}, ConverterParameter=L.L}" />
<telerik:GridViewDataColumn
ColumnGroupName="Alarm"
DataMemberBinding="{Binding Alarm_L}"
Header="L"
IsReadOnlyBinding="{Binding Converter={StaticResource RowToBoolCvt}, RelativeSource={RelativeSource AncestorType={x:Type telerik:GridViewRow}}, ConverterParameter=L}" />
<telerik:GridViewDataColumn
ColumnGroupName="Alarm"
DataMemberBinding="{Binding Alarm_H}"
Header="H"
IsReadOnlyBinding="{Binding Converter={StaticResource RowToBoolCvt}, RelativeSource={RelativeSource AncestorType={x:Type telerik:GridViewRow}}, ConverterParameter=H}" />
<telerik:GridViewDataColumn
ColumnGroupName="Alarm"
DataMemberBinding="{Binding Alarm_HH}"
Header="H.H"
IsReadOnlyBinding="{Binding Converter={StaticResource RowToBoolCvt}, RelativeSource={RelativeSource AncestorType={x:Type telerik:GridViewRow}}, ConverterParameter=H.H}" />
<telerik:GridViewDataColumn
ColumnGroupName="SENSOR"
DataMemberBinding="{Binding SENSOR_CODE}"
Header="CODE"
IsReadOnlyBinding="{Binding Converter={StaticResource RowToBoolCvt}, RelativeSource={RelativeSource AncestorType={x:Type telerik:GridViewRow}}, ConverterParameter=CODE}" />
<telerik:GridViewDataColumn
DataMemberBinding="{Binding CommunicationPoint}"
Header="通讯"
IsReadOnlyBinding="{Binding Converter={StaticResource RowToBoolCvt}, RelativeSource={RelativeSource AncestorType={x:Type telerik:GridViewRow}}, ConverterParameter=通讯}" />
<telerik:GridViewDataColumn
DataMemberBinding="{Binding SeriousType}"
Header="SeriousType"
IsReadOnlyBinding="{Binding Converter={StaticResource RowToBoolCvt}, RelativeSource={RelativeSource AncestorType={x:Type telerik:GridViewRow}}, ConverterParameter=SeriousType}" />
<telerik:GridViewComboBoxColumn
ColumnGroupName="GRP."
DataMemberBinding="{Binding AL_GRP}"
Header="AL."
IsReadOnlyBinding="{Binding Converter={StaticResource RowToBoolCvt}, RelativeSource={RelativeSource AncestorType={x:Type telerik:GridViewRow}}, ConverterParameter=AL.}"
ItemsSource="{Binding DataContext.AL_GRPs, RelativeSource={RelativeSource AncestorType=telerik:RadTreeListView}}" />
<telerik:GridViewComboBoxColumn
ColumnGroupName="GRP."
DataMemberBinding="{Binding BL_GRP}"
Header="BL."
IsReadOnlyBinding="{Binding Converter={StaticResource RowToBoolCvt}, RelativeSource={RelativeSource AncestorType={x:Type telerik:GridViewRow}}, ConverterParameter=BL.}"
ItemsSource="{Binding DataContext.BL_GRPs, RelativeSource={RelativeSource AncestorType=telerik:RadTreeListView}}" />
<telerik:GridViewDataColumn
ColumnGroupName="AMS"
DataMemberBinding="{Binding Time_Delay}"
Header="TimeDelay"
IsReadOnlyBinding="{Binding Converter={StaticResource RowToBoolCvt}, RelativeSource={RelativeSource AncestorType={x:Type telerik:GridViewRow}}, ConverterParameter=TimeDelay}" />
<telerik:GridViewComboBoxColumn
DataMemberBinding="{Binding Supplier}"
DisplayMemberPath="DataItemName"
Header="供应商"
IsReadOnlyBinding="{Binding Converter={StaticResource RowToBoolCvt}, RelativeSource={RelativeSource AncestorType={x:Type telerik:GridViewRow}}, ConverterParameter=供应商}"
ItemsSource="{Binding DataContext.Suppliers, RelativeSource={RelativeSource AncestorType=telerik:RadTreeListView}}"
SelectedValueMemberPath="DataItemName" />
<telerik:GridViewDataColumn
DataMemberBinding="{Binding EquipName}"
Header="设备名"
IsReadOnlyBinding="{Binding Converter={StaticResource RowToBoolCvt}, RelativeSource={RelativeSource AncestorType={x:Type telerik:GridViewRow}}, ConverterParameter=设备名}" />
<telerik:GridViewDataColumn
ColumnGroupName="VDR"
DataMemberBinding="{Binding VDR_Record}"
Header="Record"
IsReadOnlyBinding="{Binding Converter={StaticResource RowToBoolCvt}, RelativeSource={RelativeSource AncestorType={x:Type telerik:GridViewRow}}, ConverterParameter=Record}" />
<telerik:GridViewDataColumn
ColumnGroupName="W/H"
DataMemberBinding="{Binding WHConsole}"
Header="CONSOLE"
IsReadOnlyBinding="{Binding Converter={StaticResource RowToBoolCvt}, RelativeSource={RelativeSource AncestorType={x:Type telerik:GridViewRow}}, ConverterParameter=CONSOLE_W/H}" />
<telerik:GridViewComboBoxColumn
CellEditTemplate="{StaticResource CellEditTemplate1}"
CellTemplate="{StaticResource CellTemplate1}"
ColumnGroupName="W/H"
DataMemberBinding="{Binding WHCPUs}"
Header="CPU"
IsReadOnlyBinding="{Binding Converter={StaticResource RowToBoolCvt}, RelativeSource={RelativeSource AncestorType={x:Type telerik:GridViewRow}}, ConverterParameter=CPU_W/H}" />
<telerik:GridViewDataColumn
ColumnGroupName="ECR"
DataMemberBinding="{Binding ECRConsole}"
Header="CONSOLE"
IsReadOnlyBinding="{Binding Converter={StaticResource RowToBoolCvt}, RelativeSource={RelativeSource AncestorType={x:Type telerik:GridViewRow}}, ConverterParameter=CONSOLE_ECR}" />
<telerik:GridViewComboBoxColumn
CellEditTemplate="{StaticResource CellEditTemplate2}"
CellTemplate="{StaticResource CellTemplate2}"
ColumnGroupName="ECR"
DataMemberBinding="{Binding ECRCPU}"
Header="CPU"
IsReadOnlyBinding="{Binding Converter={StaticResource RowToBoolCvt}, RelativeSource={RelativeSource AncestorType={x:Type telerik:GridViewRow}}, ConverterParameter=CPU_ECR}"
ItemsSource="{Binding DataContext.ECRCPUs, RelativeSource={RelativeSource AncestorType=telerik:RadTreeListView}}" />
<telerik:GridViewDataColumn
ColumnGroupName="SHIP OFFICE"
DataMemberBinding="{Binding ShipOfficeConsole}"
Header="CONSOLE"
IsReadOnlyBinding="{Binding Converter={StaticResource RowToBoolCvt}, RelativeSource={RelativeSource AncestorType={x:Type telerik:GridViewRow}}, ConverterParameter=CONSOLE_SHIPOFFICE}" />
<telerik:GridViewComboBoxColumn
CellEditTemplate="{StaticResource CellEditTemplate3}"
CellTemplate="{StaticResource CellTemplate3}"
ColumnGroupName="SHIP OFFICE"
DataMemberBinding="{Binding ShipOfficeCPU}"
Header="CPU"
IsReadOnlyBinding="{Binding Converter={StaticResource RowToBoolCvt}, RelativeSource={RelativeSource AncestorType={x:Type telerik:GridViewRow}}, ConverterParameter=CPU_SHIPOFFICE}"
ItemsSource="{Binding DataContext.ShipOfficeCPUs, RelativeSource={RelativeSource AncestorType=telerik:RadTreeListView}}" />
<telerik:GridViewDataColumn
DataMemberBinding="{Binding SLD}"
Header="SLD"
IsReadOnlyBinding="{Binding Converter={StaticResource RowToBoolCvt}, RelativeSource={RelativeSource AncestorType={x:Type telerik:GridViewRow}}, ConverterParameter=SLD}" />
<telerik:GridViewDataColumn
DataMemberBinding="{Binding SHD}"
Header="SHD"
IsReadOnlyBinding="{Binding Converter={StaticResource RowToBoolCvt}, RelativeSource={RelativeSource AncestorType={x:Type telerik:GridViewRow}}, ConverterParameter=SHD}" />
<telerik:GridViewDataColumn
DataMemberBinding="{Binding SafetyDelay}"
Header="安保延迟"
IsReadOnlyBinding="{Binding Converter={StaticResource RowToBoolCvt}, RelativeSource={RelativeSource AncestorType={x:Type telerik:GridViewRow}}, ConverterParameter=安保延迟}" />
<telerik:GridViewDataColumn
DataMemberBinding="{Binding AutoCtrl}"
Header="自动控制"
IsReadOnlyBinding="{Binding Converter={StaticResource RowToBoolCvt}, RelativeSource={RelativeSource AncestorType={x:Type telerik:GridViewRow}}, ConverterParameter=自动控制}" />
<telerik:GridViewDataColumn
DataMemberBinding="{Binding AssociatedCableInfo}"
Header="关联的电缆信息"
IsReadOnlyBinding="{Binding Converter={StaticResource RowToBoolCvt}, RelativeSource={RelativeSource AncestorType={x:Type telerik:GridViewRow}}, ConverterParameter=关联的电缆信息}">
<telerik:GridViewDataColumn.CellStyle>
<Style TargetType="{x:Type telerik:GridViewCell}">
<Setter Property="Foreground" Value="#c0c0c0" />
<Setter Property="BorderBrush" Value="Transparent" />
<Setter Property="BorderThickness" Value="0" />
</Style>
</telerik:GridViewDataColumn.CellStyle>
</telerik:GridViewDataColumn>
<telerik:GridViewDataColumn
DataMemberBinding="{Binding AssociatedChannelInfo}"
Header="关联的通道信息"
IsReadOnlyBinding="{Binding Converter={StaticResource RowToBoolCvt}, RelativeSource={RelativeSource AncestorType={x:Type telerik:GridViewRow}}, ConverterParameter=关联的通道信息}">
<telerik:GridViewDataColumn.CellStyle>
<Style TargetType="{x:Type telerik:GridViewCell}">
<Setter Property="Foreground" Value="#c0c0c0" />
<Setter Property="BorderBrush" Value="Transparent" />
<Setter Property="BorderThickness" Value="0" />
</Style>
</telerik:GridViewDataColumn.CellStyle>
</telerik:GridViewDataColumn>
<telerik:GridViewDataColumn
DataMemberBinding="{Binding Remarks}"
Header="备注"
IsReadOnlyBinding="{Binding Converter={StaticResource RowToBoolCvt}, RelativeSource={RelativeSource AncestorType={x:Type telerik:GridViewRow}}, ConverterParameter=备注}" />
</telerik:RadTreeListView.Columns>
<!-- 定义行详情模板
<telerik:RadTreeListView.RowDetailsTemplate>
<DataTemplate>
<StackPanel>
<TextBlock Text="111"/>
</StackPanel>
</DataTemplate>
</telerik:RadTreeListView.RowDetailsTemplate>
-->
</telerik:RadTreeListView>
<StackPanel
Grid.Row="2"
Grid.Column="1"
Margin="5">
<telerik:RadButton
Width="100"
Margin="0,0,0,5"
HorizontalAlignment="Stretch"
Command="{Binding ButtonCmd}"
CommandParameter="新增信号"
Content="新增信号"
Style="{StaticResource buttoustyle1}" />
<telerik:RadButton
Width="100"
Margin="0,0,0,5"
HorizontalAlignment="Stretch"
Command="{Binding ButtonCmd}"
CommandParameter="新增虚拟点"
Content="新增虚拟点"
Style="{StaticResource buttoustyle1}" />
<telerik:RadButton
Width="100"
Margin="0,0,0,5"
HorizontalAlignment="Stretch"
Command="{Binding ButtonCmd}"
CommandParameter="信号转虚拟点">
<telerik:RadButton.Style>
<Style TargetType="telerik:RadButton">
<!-- 默认文本 -->
<Setter Property="Content" Value="虚拟转信号" />
<Setter Property="IsEnabled" Value="False" />
<!-- 当选中项的Content为信号时 -->
<Style.Triggers>
<DataTrigger Binding="{Binding SelectedItem.type, ElementName=RadGridView1}" Value="信号">
<Setter Property="Content" Value="信号转虚拟点" />
<Setter Property="IsEnabled" Value="True" />
</DataTrigger>
<DataTrigger Binding="{Binding SelectedItem.type, ElementName=RadGridView1}" Value="虚拟点">
<Setter Property="Content" Value="虚拟点转信号" />
<Setter Property="IsEnabled" Value="True" />
</DataTrigger>
<DataTrigger Binding="{Binding Content, ElementName=myButton}" Value="显示全部">
<Setter Property="IsEnabled" Value="False" />
</DataTrigger>
<MultiDataTrigger>
<MultiDataTrigger.Conditions>
<Condition Binding="{Binding SelectedItem.type, ElementName=RadGridView1}" Value="信号" />
<Condition Binding="{Binding SelectedItem.IsExpandable, ElementName=RadGridView1}" Value="True" />
</MultiDataTrigger.Conditions>
<Setter Property="IsEnabled" Value="False" />
</MultiDataTrigger>
</Style.Triggers>
</Style>
</telerik:RadButton.Style>
</telerik:RadButton>
<telerik:RadButton
Width="100"
Margin="0,0,0,5"
HorizontalAlignment="Stretch"
Command="{Binding ButtonCmd}"
CommandParameter="删除"
Content="删除"
Style="{StaticResource buttoustyle1}" />
<telerik:RadButton
Width="100"
Margin="0,0,0,5"
HorizontalAlignment="Stretch"
Command="{Binding ButtonCmd}"
CommandParameter="撤销删除"
Content="撤销删除"
Style="{StaticResource buttoustyle1}" />
<telerik:RadButton
Width="100"
Margin="0,0,0,5"
HorizontalAlignment="Stretch"
Command="{Binding ButtonCmd}"
CommandParameter="彻底删除"
Content="彻底删除"
Style="{StaticResource buttoustyle1}" />
<telerik:RadButton
Width="100"
Margin="0,0,0,5"
HorizontalAlignment="Stretch"
Command="{Binding ButtonCmd}"
CommandParameter="还原信号"
Content="还原信号">
<telerik:RadButton.Style>
<Style TargetType="telerik:RadButton">
<Setter Property="IsEnabled" Value="False" />
<Style.Triggers>
<DataTrigger Binding="{Binding Content, ElementName=myButton}" Value="显示全部">
<Setter Property="IsEnabled" Value="True" />
</DataTrigger>
</Style.Triggers>
</Style>
</telerik:RadButton.Style>
</telerik:RadButton>
<telerik:RadButton
Width="100"
Margin="0,20,0,5"
HorizontalAlignment="Stretch"
Command="{Binding ButtonCmd}"
CommandParameter="审核"
Content="审核"
Style="{StaticResource buttoustyle1}" />
<telerik:RadButton
Width="100"
Margin="0,0,0,5"
HorizontalAlignment="Stretch"
Command="{Binding ButtonCmd}"
CommandParameter="重新打开"
Content="重新打开"
Style="{StaticResource buttoustyle1}" />
<telerik:RadButton
Width="100"
Margin="0,60,0,5"
HorizontalAlignment="Stretch"
Content="关联信号"
IsEnabled="False"
Style="{StaticResource buttoustyle1}" />
<telerik:RadButton
Width="100"
Margin="0,0,0,5"
HorizontalAlignment="Stretch"
Content="查关联信号"
IsEnabled="False"
Style="{StaticResource buttoustyle1}" />
<GroupBox
Margin="5,120,5,5"
VerticalAlignment="Bottom"
Header="显示状态">
<StackPanel>
<telerik:RadButton
Width="80"
Margin="0,0,0,5"
HorizontalAlignment="Center"
Command="{Binding StatusButtonCmd}"
CommandParameter="ToDelete"
Content="待删除"
Foreground="#db9fa9" />
<telerik:RadButton
Width="80"
Margin="0,0,0,5"
HorizontalAlignment="Center"
Command="{Binding StatusButtonCmd}"
CommandParameter="New"
Content="新增"
Foreground="#fc7c2c" />
<telerik:RadButton
Width="80"
Margin="0,0,0,5"
HorizontalAlignment="Center"
Command="{Binding StatusButtonCmd}"
CommandParameter="Used"
Content="已关联"
Foreground="#49ac64" />
<telerik:RadButton
Width="80"
Margin="0,0,0,5"
HorizontalAlignment="Center"
Command="{Binding StatusButtonCmd}"
CommandParameter="Confirmed"
Content="已审核"
Foreground="#565656" />
<telerik:RadButton
Width="80"
Margin="0,0,0,5"
HorizontalAlignment="Center"
Command="{Binding StatusButtonCmd}"
CommandParameter="Reopen"
Content="重新打开"
Foreground="#1c3df5" />
<telerik:RadButton
Width="80"
Margin="0,0,0,5"
HorizontalAlignment="Center"
Command="{Binding StatusButtonCmd}"
CommandParameter="All"
Content="全部"
Foreground="#232323" />
</StackPanel>
</GroupBox>
</StackPanel>
</Grid>
</Grid>
</telerik:RadBusyIndicator>
</UserControl>