Files
DP44/DataPRO/Modules/Hardware/HardwareList/View/HardwareListView.xaml

136 lines
11 KiB
Plaintext
Raw Normal View History

2026-04-17 14:55:32 -04:00
<base:BaseView x:Class="HardwareList.HardwareListView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:base="clr-namespace:DTS.Common.Base;assembly=DTS.Common"
xmlns:behaviors="clr-namespace:DTS.Common.Behaviors;assembly=DTS.Common"
xmlns:controls="clr-namespace:DTS.Common.Controls;assembly=DTS.Common"
xmlns:i="http://schemas.microsoft.com/xaml/behaviors"
xmlns:strings="clr-namespace:HardwareList"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:converters="clr-namespace:DTS.Common.Converters;assembly=DTS.Common"
xmlns:converters2="clr-namespace:HardwareList.Converters"
mc:Ignorable="d"
d:DesignHeight="768" d:DesignWidth="1366"
xmlns:xctk="http://schemas.xceed.com/wpf/xaml/toolkit"
xmlns:controls2="clr-namespace:DTS.Common.Controls;assembly=DTS.Common">
<base:BaseView.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="pack://application:,,,/DTS.Common;component/Themes/CommonStyles.xaml"/>
<ResourceDictionary Source="pack://application:,,,/DTS.Common;component/Controls/combobox.xaml"/>
</ResourceDictionary.MergedDictionaries>
<Style TargetType="ListView">
<Setter Property="ItemContainerStyle" Value="{StaticResource TTS_ListViewItemStyle}"/>
</Style>
<Style TargetType="TextBox" BasedOn="{StaticResource TTS_TextBoxStyle}"/>
<Style TargetType="TextBlock" BasedOn="{StaticResource TTS_TextBlockStyle}"/>
<Style TargetType="CheckBox" BasedOn="{StaticResource PageContentCheckBoxStyle}" />
<Style TargetType="ComboBox" BasedOn="{StaticResource TTS_ComboBoxStyle}"/>
<Style TargetType="Button" BasedOn="{StaticResource TTS_ButtonStyle}"/>
<Style TargetType="GridViewColumnHeader" BasedOn="{StaticResource Gray_GridViewColumnHeaderStyle}"/>
<converters:BooleanToVisibilityConverter x:Key="BoolToVis" />
<converters2:FirstUseDateConverter x:Key="FirstUseConverter" />
</ResourceDictionary>
</base:BaseView.Resources>
<Grid Background="{DynamicResource Brush_ApplicationContentBackground}">
<ListView ItemsSource="{Binding Hardware, UpdateSourceTrigger=PropertyChanged}" AutomationProperties.AutomationId="HardwareListView" SelectedIndex="{Binding SelectedHardwareIndex, Mode=TwoWay}" MouseDoubleClick="MouseDoubleClick" GridViewColumnHeader.Click="GridViewColumnHeader_OnClick">
<i:Interaction.Behaviors>
<behaviors:MultiSelectionBehavior SelectedItems="{Binding SelectedHardwareItems}" />
</i:Interaction.Behaviors>
<ListView.View>
<controls:AutoSizedGridView AutomationProperties.AutomationId="HardwareListGridView">
<GridViewColumn AutomationProperties.AutomationId="SerialNumber">
<controls2:GridViewColumnHeaderSearchable Tag="SerialNumber" HeaderTitle="{strings:TranslateExtension SerialNumber}" Search="GridViewColumnHeaderSearchable_OnSearch" ClickHandler="GridViewColumnHeader_OnClick" ListviewId="{Binding ListViewId}"/>
<GridViewColumn.CellTemplate>
<ItemContainerTemplate>
<TextBlock Text="{Binding SerialNumber,FallbackValue='SerialNumber'}" AutomationProperties.AutomationId="SerialNumLbl"/>
</ItemContainerTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
<GridViewColumn AutomationProperties.AutomationId="HardwareType">
<controls2:GridViewColumnHeaderSearchable Tag="HardwareType" HeaderTitle="{strings:TranslateExtension HardwareType}" Search="GridViewColumnHeaderSearchable_OnSearch" ClickHandler="GridViewColumnHeader_OnClick" ListviewId="{Binding ListViewId}"/>
<GridViewColumn.CellTemplate>
<ItemContainerTemplate>
<TextBlock Text="{Binding HardwareType,FallbackValue='HardwareType'}" AutomationProperties.AutomationId="TypeLbl"/>
</ItemContainerTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
<GridViewColumn AutomationProperties.AutomationId="IPAddress">
<controls2:GridViewColumnHeaderSearchable Tag="IPAddress" HeaderTitle="{strings:TranslateExtension Connection}" Search="GridViewColumnHeaderSearchable_OnSearch" ClickHandler="GridViewColumnHeader_OnClick" ListviewId="{Binding ListViewId}"/>
<GridViewColumn.CellTemplate>
<ItemContainerTemplate>
<TextBlock Text="{Binding IPAddress,FallbackValue='IPAddress'}" AutomationProperties.AutomationId="IPAddressLbl"/>
</ItemContainerTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
<GridViewColumn AutomationProperties.AutomationId="ChannelCount">
<controls2:GridViewColumnHeaderSearchable Tag="ChannelCount" HeaderTitle="{strings:TranslateExtension ChannelCount}" Search="GridViewColumnHeaderSearchable_OnSearch" ClickHandler="GridViewColumnHeader_OnClick" ListviewId="{Binding ListViewId}"/>
<GridViewColumn.CellTemplate>
<ItemContainerTemplate>
<TextBlock Text="{Binding ChannelCount,FallbackValue='ChannelCount'}" AutomationProperties.AutomationId="ChanCountLbl"/>
</ItemContainerTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
<GridViewColumn AutomationProperties.AutomationId="Firmware">
<controls2:GridViewColumnHeaderSearchable Tag="Firmware" HeaderTitle="{strings:TranslateExtension Firmware}" Search="GridViewColumnHeaderSearchable_OnSearch" ClickHandler="GridViewColumnHeader_OnClick" ListviewId="{Binding ListViewId}"/>
<GridViewColumn.CellTemplate>
<ItemContainerTemplate>
<TextBlock Text="{Binding Firmware,FallbackValue='Firmware'}" AutomationProperties.AutomationId="FirmwareLbl"/>
</ItemContainerTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
<GridViewColumn AutomationProperties.AutomationId="MaxSampleRate">
<controls2:GridViewColumnHeaderSearchable Tag="MaxSampleRate" HeaderTitle="{strings:TranslateExtension MaxSampleRate}" Search="GridViewColumnHeaderSearchable_OnSearch" ClickHandler="GridViewColumnHeader_OnClick" ListviewId="{Binding ListViewId}"/>
<GridViewColumn.CellTemplate>
<ItemContainerTemplate>
<TextBlock Text="{Binding MaxSampleRate,FallbackValue='MaxSampleRate',StringFormat='N0', TargetNullValue='---'}" AutomationProperties.AutomationId="MaxSampleRateLbl"/>
</ItemContainerTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
<GridViewColumn AutomationProperties.AutomationId="CalDate">
<controls2:GridViewColumnHeaderSearchable Tag="CalDate" HeaderTitle="{strings:TranslateExtension CalDate}" Search="GridViewColumnHeaderSearchable_OnSearch" ClickHandler="GridViewColumnHeader_OnClick" ListviewId="{Binding ListViewId}"/>
<GridViewColumn.CellTemplate>
<ItemContainerTemplate>
<TextBlock Text="{Binding CalDate,FallbackValue='CalDate', StringFormat='d', TargetNullValue='N/A'}" AutomationProperties.AutomationId="CalDateLbl"/>
</ItemContainerTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
<GridViewColumn AutomationProperties.AutomationId="FirstUseDate">
<controls2:GridViewColumnHeaderSearchable Tag="FirstUseDate" HeaderTitle="{strings:TranslateExtension FirstUseDate}" Search="GridViewColumnHeaderSearchable_OnSearch" ClickHandler="GridViewColumnHeader_OnClick" ListviewId="{Binding ListViewId}"/>
<GridViewColumn.CellTemplate>
<ItemContainerTemplate>
<TextBlock Text="{Binding Path=DataContext,RelativeSource={RelativeSource Self}, StringFormat='d',Converter={StaticResource FirstUseConverter}}"
AutomationProperties.AutomationId="FirstUseDateLbl"/>
</ItemContainerTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
<GridViewColumn AutomationProperties.AutomationId="CalDueDate">
<controls2:GridViewColumnHeaderSearchable Tag="CalDueDate" HeaderTitle="{strings:TranslateExtension CalDueDate}" Search="GridViewColumnHeaderSearchable_OnSearch" ClickHandler="GridViewColumnHeader_OnClick" ListviewId="{Binding ListViewId}"/>
<GridViewColumn.CellTemplate>
<ItemContainerTemplate>
<TextBlock Text="{Binding CalDueDate,FallbackValue='CalDueDate',StringFormat='d', TargetNullValue='N/A'}" AutomationProperties.AutomationId="CalDueDateLbl"/>
</ItemContainerTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
<GridViewColumn AutomationProperties.AutomationId="TreeViewButton">
<GridViewColumn.CellTemplate>
<ItemContainerTemplate>
<Button Visibility="{Binding HasTreeView, Converter={StaticResource BoolToVis}}"
Content="{strings:TranslateExtension TreeView}"
Click="TreeviewButton_Click" AutomationProperties.AutomationId="btnTreeViewDataRecordersS6DB"
/>
</ItemContainerTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
</controls:AutoSizedGridView>
</ListView.View>
</ListView>
<Popup x:Name="SLICE6TreeViewPopup" Visibility="Collapsed" StaysOpen="False"/>
</Grid>
</base:BaseView>