261 lines
15 KiB
XML
261 lines
15 KiB
XML
<controls:MaterialWindow
|
|
x:Class="Szmedi.RvKits.ModelManager.RenameFamilyWin"
|
|
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
|
xmlns:attachedProps="clr-namespace:Szmedi.RvKits.AttachProps"
|
|
xmlns:b="http://schemas.microsoft.com/xaml/behaviors"
|
|
xmlns:controls="clr-namespace:Szmedi.RvKits.Controls"
|
|
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
|
xmlns:materialDesign="http://materialdesigninxaml.net/winfx/xaml/themes"
|
|
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
|
xmlns:modelManager="clr-namespace:Szmedi.RvKits.ModelManager"
|
|
xmlns:validationRules="clr-namespace:Szmedi.RvKits.ValidationRules"
|
|
Title="族批量命名"
|
|
Width="900"
|
|
Height="600"
|
|
d:DataContext="{d:DesignInstance modelManager:RenameFamilyViewModel}"
|
|
mc:Ignorable="d">
|
|
<controls:MaterialWindow.Resources>
|
|
<ResourceDictionary Source="pack://application:,,,/Szmedi.RvKits;component/WPFUI.xaml" />
|
|
</controls:MaterialWindow.Resources>
|
|
<Grid>
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="*" />
|
|
<RowDefinition Height="Auto" />
|
|
</Grid.RowDefinitions>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="250" />
|
|
<ColumnDefinition Width="*" />
|
|
</Grid.ColumnDefinitions>
|
|
<Grid Grid.RowSpan="2">
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="*" />
|
|
<RowDefinition Height="Auto" />
|
|
</Grid.RowDefinitions>
|
|
<GroupBox Header="族类别">
|
|
<ListBox
|
|
x:Name="LbCategories"
|
|
d:ItemsSource="{d:SampleData ItemCount=5}"
|
|
DisplayMemberPath="Key"
|
|
ItemsSource="{Binding Collection, Mode=OneWay}"
|
|
SelectionMode="Multiple"
|
|
Style="{StaticResource MaterialDesignFilterChipListBox}">
|
|
<b:Interaction.Triggers>
|
|
<b:EventTrigger EventName="SelectionChanged">
|
|
<b:InvokeCommandAction Command="{Binding GetRenameItemsCommand}" CommandParameter="{Binding SelectedItems, RelativeSource={RelativeSource FindAncestor, AncestorType=ListBox}}" />
|
|
</b:EventTrigger>
|
|
</b:Interaction.Triggers>
|
|
<!--<ListBox.ItemTemplate>
|
|
<DataTemplate>
|
|
<StackPanel Orientation="Horizontal">
|
|
<CheckBox IsChecked="{Binding IsSelected, RelativeSource={RelativeSource FindAncestor, AncestorType=ListBoxItem}}" />
|
|
<TextBlock VerticalAlignment="Center" Text="{Binding Value}" />
|
|
</StackPanel>
|
|
</DataTemplate>
|
|
</ListBox.ItemTemplate>-->
|
|
</ListBox>
|
|
</GroupBox>
|
|
<StackPanel Grid.Row="1">
|
|
<DockPanel>
|
|
<CheckBox Content="全选" DockPanel.Dock="Left">
|
|
<b:Interaction.Triggers>
|
|
<b:EventTrigger EventName="Checked">
|
|
<b:CallMethodAction MethodName="SelectAll" TargetObject="{Binding ElementName=LbCategories}" />
|
|
</b:EventTrigger>
|
|
<b:EventTrigger EventName="Unchecked">
|
|
<b:CallMethodAction MethodName="UnselectAll" TargetObject="{Binding ElementName=LbCategories}" />
|
|
</b:EventTrigger>
|
|
</b:Interaction.Triggers>
|
|
</CheckBox>
|
|
<TextBlock
|
|
HorizontalAlignment="Right"
|
|
VerticalAlignment="Center"
|
|
DockPanel.Dock="Right"
|
|
Text="{Binding CategoryCount, StringFormat=类别个数:{0:D}}" />
|
|
</DockPanel>
|
|
<TextBox materialDesign:HintAssist.Hint="过滤族类别" Text="{Binding SearchText, UpdateSourceTrigger=PropertyChanged}" />
|
|
</StackPanel>
|
|
</Grid>
|
|
<GroupBox Grid.Row="0" Grid.Column="1" Header="修改列表">
|
|
<Grid>
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="*" />
|
|
<RowDefinition Height="Auto" />
|
|
</Grid.RowDefinitions>
|
|
<DataGrid
|
|
x:Name="DgRename"
|
|
attachedProps:TextSearch.SearchValue="{Binding Text, ElementName=TbFound, UpdateSourceTrigger=PropertyChanged}"
|
|
d:ItemsSource="{d:SampleData}"
|
|
AutoGenerateColumns="False"
|
|
CanUserAddRows="False"
|
|
IsEnabled="{Binding CanInput}"
|
|
ItemsSource="{Binding RenameItems}"
|
|
SelectionUnit="Cell">
|
|
<DataGrid.Resources>
|
|
<Style BasedOn="{StaticResource MaterialDesignDataGridCell}" TargetType="{x:Type DataGridCell}">
|
|
<Setter Property="attachedProps:TextSearch.IsTextMatch">
|
|
<Setter.Value>
|
|
<MultiBinding Converter="{StaticResource SearchFamilyValueConverter}">
|
|
<Binding Path="Content.Text" RelativeSource="{RelativeSource Self}" />
|
|
<Binding Path="(attachedProps:TextSearch.SearchValue)" RelativeSource="{RelativeSource Self}" />
|
|
<Binding RelativeSource="{RelativeSource Self}" />
|
|
</MultiBinding>
|
|
</Setter.Value>
|
|
</Setter>
|
|
<Style.Triggers>
|
|
<Trigger Property="attachedProps:TextSearch.IsTextMatch" Value="True">
|
|
<Setter Property="Foreground" Value="Orange" />
|
|
</Trigger>
|
|
</Style.Triggers>
|
|
</Style>
|
|
</DataGrid.Resources>
|
|
<DataGrid.Columns>
|
|
<DataGridCheckBoxColumn Binding="{Binding IsSelected, UpdateSourceTrigger=PropertyChanged}" EditingElementStyle="{StaticResource MaterialDesignDataGridCheckBoxColumnEditingStyle}" ElementStyle="{StaticResource MaterialDesignDataGridCheckBoxColumnStyle}">
|
|
<DataGridCheckBoxColumn.Header>
|
|
<Border Background="Transparent">
|
|
<CheckBox Content="全选" IsChecked="{Binding DataContext.IsAllItemsSelected, RelativeSource={RelativeSource AncestorType=DataGrid}}" />
|
|
</Border>
|
|
</DataGridCheckBoxColumn.Header>
|
|
<DataGridCheckBoxColumn.HeaderStyle>
|
|
<Style BasedOn="{StaticResource MaterialDesignDataGridColumnHeader}" TargetType="{x:Type DataGridColumnHeader}">
|
|
<Setter Property="HorizontalContentAlignment" Value="Center" />
|
|
</Style>
|
|
</DataGridCheckBoxColumn.HeaderStyle>
|
|
</DataGridCheckBoxColumn>
|
|
<DataGridTextColumn Binding="{Binding CategoryName}" Header="族类别" IsReadOnly="True" />
|
|
<DataGridTextColumn Binding="{Binding OldFamilyName}" Header="族名称" IsReadOnly="True" />
|
|
<DataGridTextColumn Binding="{Binding NewFamilyName, UpdateSourceTrigger=PropertyChanged}" EditingElementStyle="{StaticResource MaterialDesignDataGridTextColumnEditingStyle}" Header="新族名称" />
|
|
</DataGrid.Columns>
|
|
</DataGrid>
|
|
<CheckBox
|
|
Grid.Row="1"
|
|
HorizontalAlignment="Right"
|
|
Content="选中已使用项"
|
|
Foreground="Black"
|
|
IsChecked="{Binding IsUsed}" />
|
|
</Grid>
|
|
</GroupBox>
|
|
<UniformGrid
|
|
Grid.Row="1"
|
|
Grid.Column="1"
|
|
Columns="3"
|
|
Rows="1">
|
|
<GroupBox Header="前/后缀">
|
|
<StackPanel>
|
|
<ComboBox
|
|
x:Name="CbPrefix"
|
|
materialDesign:HintAssist.Hint="前缀"
|
|
InputMethod.IsInputMethodEnabled="False"
|
|
IsEditable="True"
|
|
IsEnabled="{Binding CanInput}"
|
|
SelectedValue="{Binding PrefixText}"
|
|
SelectedValuePath="Tag">
|
|
<ComboBoxItem Content="QQ(前期工程)" Tag="QQ" />
|
|
<ComboBoxItem Content="YT(岩土工程(勘察))" Tag="YT" />
|
|
<ComboBoxItem Content="JZ(建筑)" Tag="JZ" />
|
|
<ComboBoxItem Content="JG(结构)" Tag="JG" />
|
|
<ComboBoxItem Content="XL(线路)" Tag="XL" />
|
|
<ComboBoxItem Content="GJ(轨道)" Tag="GJ" />
|
|
<ComboBoxItem Content="CL(车辆)" Tag="CL" />
|
|
<ComboBoxItem Content="TF(通风、空调与供暖)" Tag="TF" />
|
|
<ComboBoxItem Content="GP(给水与排水)" Tag="GP" />
|
|
<ComboBoxItem Content="GD(供电)" Tag="GD" />
|
|
<ComboBoxItem Content="TX(通信系统)" Tag="TX" />
|
|
<ComboBoxItem Content="XH(信号系统)" Tag="XH" />
|
|
<ComboBoxItem Content="ZS(自动售检票系统)" Tag="ZS" />
|
|
<ComboBoxItem Content="HB(火灾自动报警系统)" Tag="HB" />
|
|
<ComboBoxItem Content="ZJ(综合监控系统)" Tag="ZJ" />
|
|
<ComboBoxItem Content="HJ(环境与设备监控系统)" Tag="HJ" />
|
|
<ComboBoxItem Content="CX(乘客信息系统)" Tag="CX" />
|
|
<ComboBoxItem Content="MJ(门禁系统)" Tag="MJ" />
|
|
<ComboBoxItem Content="YK(运营控制中心)" Tag="YK" />
|
|
<ComboBoxItem Content="ZK(站内客运设备)" Tag="ZK" />
|
|
<ComboBoxItem Content="ZT(站台门)" Tag="ZT" />
|
|
<ComboBoxItem Content="CJ(车辆基地设备)" Tag="CJ" />
|
|
<ComboBoxItem Content="XX(信息系统)" Tag="XX" />
|
|
<ComboBoxItem Content="TC(通用测量设备)" Tag="TC" />
|
|
<ComboBoxItem Content="NY(能源系统)" Tag="NY" />
|
|
<ComboBoxItem Content="ZB(主变电系统)" Tag="ZB" />
|
|
<ComboBoxItem Content="AF(安防系统)" Tag="AF" />
|
|
<ComboBoxItem Content="ZX(装修)" Tag="ZX" />
|
|
<ComboBoxItem Content="CD(场布)" Tag="CD" />
|
|
<b:Interaction.Triggers>
|
|
<b:EventTrigger EventName="PreviewTextInput">
|
|
<b:InvokeCommandAction Command="{Binding PreviewTextInputCommand}" PassEventArgsToCommand="True"/>
|
|
</b:EventTrigger>
|
|
</b:Interaction.Triggers>
|
|
</ComboBox>
|
|
<!--<TextBox
|
|
x:Name="TbPrefix"
|
|
materialDesign:HintAssist.Hint="前缀"
|
|
IsEnabled="{Binding CanInput}">
|
|
<TextBox.Text>
|
|
<Binding Path="PrefixText" UpdateSourceTrigger="PropertyChanged">
|
|
<Binding.ValidationRules>
|
|
<validationRules:UndefinedCharRules ValidatesOnTargetUpdated="True" />
|
|
</Binding.ValidationRules>
|
|
</Binding>
|
|
</TextBox.Text>
|
|
</TextBox>-->
|
|
<TextBox x:Name="TbSuffix" materialDesign:HintAssist.Hint="后缀" IsEnabled="{Binding CanInput}">
|
|
<TextBox.Text>
|
|
<Binding Path="SuffixText" UpdateSourceTrigger="PropertyChanged">
|
|
<Binding.ValidationRules>
|
|
<validationRules:UndefinedCharRules ValidatesOnTargetUpdated="True" />
|
|
</Binding.ValidationRules>
|
|
</Binding>
|
|
</TextBox.Text>
|
|
</TextBox>
|
|
</StackPanel>
|
|
</GroupBox>
|
|
<GroupBox Header="查找/替换">
|
|
<StackPanel>
|
|
<TextBox x:Name="TbFound" materialDesign:HintAssist.Hint="查找" IsEnabled="{Binding CanInput}">
|
|
<TextBox.Text>
|
|
<Binding Path="FoundText" UpdateSourceTrigger="PropertyChanged">
|
|
<Binding.ValidationRules>
|
|
<validationRules:UndefinedCharRules ValidatesOnTargetUpdated="True" />
|
|
</Binding.ValidationRules>
|
|
</Binding>
|
|
</TextBox.Text>
|
|
</TextBox>
|
|
<TextBox x:Name="TbReplace" materialDesign:HintAssist.Hint="替换" IsEnabled="{Binding CanInput}">
|
|
<TextBox.Text>
|
|
<Binding Path="ReplaceText" UpdateSourceTrigger="PropertyChanged">
|
|
<Binding.ValidationRules>
|
|
<validationRules:UndefinedCharRules ValidatesOnTargetUpdated="True" />
|
|
</Binding.ValidationRules>
|
|
</Binding>
|
|
</TextBox.Text>
|
|
</TextBox>
|
|
</StackPanel>
|
|
</GroupBox>
|
|
<Grid>
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="Auto" />
|
|
<RowDefinition Height="Auto" />
|
|
</Grid.RowDefinitions>
|
|
<GroupBox Grid.Row="0" Header="连接符">
|
|
<TextBox x:Name="TbSeparator" IsEnabled="{Binding CanInput}">
|
|
<TextBox.Text>
|
|
<Binding Path="Separator" UpdateSourceTrigger="PropertyChanged">
|
|
<Binding.ValidationRules>
|
|
<validationRules:UndefinedCharRules ValidatesOnTargetUpdated="True" />
|
|
</Binding.ValidationRules>
|
|
</Binding>
|
|
</TextBox.Text>
|
|
</TextBox>
|
|
</GroupBox>
|
|
<Button
|
|
Grid.Row="1"
|
|
materialDesign:ButtonProgressAssist.IsIndeterminate="{Binding ModifyNameCommand.IsRunning, Mode=OneWay}"
|
|
materialDesign:ButtonProgressAssist.IsIndicatorVisible="{Binding ModifyNameCommand.IsRunning, Mode=OneWay}"
|
|
materialDesign:ButtonProgressAssist.Value="-1"
|
|
Command="{Binding ModifyNameCommand}"
|
|
Content="修改名称"
|
|
ToolTip="勾选要修改的项进行修改" />
|
|
</Grid>
|
|
</UniformGrid>
|
|
</Grid>
|
|
</controls:MaterialWindow>
|