Code development platform for open source projects from the European Union institutions

Skip to content
Snippets Groups Projects
Forked from VECTO / VECTO Sim
7348 commits behind the upstream repository.
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
VectoXMLFileSelector.xaml 3.22 KiB
<UserControl
	xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
	xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
	xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
	xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
	xmlns:views="clr-namespace:HashingTool.Views"
	x:Class="HashingTool.Views.VectoXMLFileSelector"
	mc:Ignorable="d" d:DesignWidth="456" MinHeight="43"
	d:DataContext="{d:DesignInstance views:VectoXMLFileSelector}" Height="81">
	<UserControl.Resources>
		<BooleanToVisibilityConverter x:Key="BoolToVis" />
	</UserControl.Resources>
	<Grid>
		<TextBox Height="23" Margin="10,10,140,0" TextWrapping="Wrap" Text="{Binding XMLFile.Source}" VerticalAlignment="Top" />
		<Button Content="Browse ..." Command="{Binding XMLFile.BrowseFileCommand, Mode=OneWay}" Margin="0,10,10,0"
				VerticalAlignment="Top" HorizontalAlignment="Right" Width="75" />
		<ContentControl Visibility="{Binding XMLFile.ValidateInput, Converter={StaticResource BoolToVis}}" Height="33"
						Margin="0,14,40,-4" VerticalAlignment="Top" HorizontalAlignment="Right" Width="93">
			<ContentControl.RenderTransform>
				<ScaleTransform ScaleX="0.5" ScaleY="0.5" />
			</ContentControl.RenderTransform>
			<ContentControl.Style>
				<Style TargetType="ContentControl">
					<Setter Property="ContentTemplate" Value="{StaticResource ICON_XML_unknown}" />
					<Setter Property="ToolTip" Value="Not validated" />
					<Style.Triggers>
						<DataTrigger Binding="{Binding XMLFile.IsValid}" Value="True">
							<Setter Property="ContentTemplate" Value="{StaticResource Icon_XML_OK}" />
							<Setter Property="ToolTip" Value="Valid XML" />
						</DataTrigger>
						<DataTrigger Binding="{Binding XMLFile.IsValid}" Value="False">
							<Setter Property="ContentTemplate" Value="{StaticResource Icon_XML_NOK}" />
							<Setter Property="ToolTip" Value="Invalid XML" />
						</DataTrigger>
					</Style.Triggers>
				</Style>
			</ContentControl.Style>
		</ContentControl>

		<StackPanel Orientation="Horizontal" Margin="10,44,0,10">
			<StackPanel.Style>
				<Style TargetType="StackPanel">
					<Setter Property="Visibility" Value="{Binding XMLFile.ValidateInput, Converter={StaticResource BoolToVis}}" />
				</Style>
			</StackPanel.Style>
			<Label Content="{Binding XMLFile.XMLValidationErrors.Count}" ContentStringFormat="{}{0} Warnings/Errors"
					MinWidth="80">
				<Label.Style>
					<Style TargetType="Label">
						<Setter Property="Foreground" Value="Red" />
						<Style.Triggers>
							<DataTrigger Binding="{Binding XMLFile.XMLValidationErrors.Count}" Value="0">
								<Setter Property="Foreground" Value="Black" />
							</DataTrigger>
						</Style.Triggers>
					</Style>
				</Label.Style>
			</Label>
			<Button x:Name="btnDetails" Margin="10,0,0,0" Content="Details..." HorizontalAlignment="Left" Width="91"
					Click="btnDetails_Click">
				<Button.Style>
					<Style TargetType="Button">
						<Setter Property="IsEnabled" Value="True" />
						<Style.Triggers>
							<DataTrigger Binding="{Binding XMLFile.XMLValidationErrors.Count}" Value="0">
								<Setter Property="IsEnabled" Value="False" />
							</DataTrigger>
						</Style.Triggers>
					</Style>
				</Button.Style>
			</Button>
		</StackPanel>
	</Grid>
</UserControl>