123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263 |
- <UserControl
- x:Class="FurnaceSimulator.Views.SimulatorPlcInt16IOView"
- xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
- xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
- xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
- xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
- xmlns:views="clr-namespace:FurnaceSimulator.Views"
- d:DesignHeight="450"
- d:DesignWidth="1900"
- mc:Ignorable="d">
- <UserControl.Resources>
- <views:BoolBackgroundConverter x:Key="BoolBackgroundConverter"/>
- <SolidColorBrush x:Key="DataGrid_Cell_BD" Color="Gray"/>
- <Style x:Key="Lamp-Button" TargetType="{x:Type views:IoButton}">
- <Setter Property="Width" Value="16"/>
- <Setter Property="Height" Value="16"/>
- <Setter Property="Template">
- <Setter.Value>
- <ControlTemplate TargetType="{x:Type views:IoButton}">
- <Grid>
- <ContentPresenter
- HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
- VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
- Content=""
- RecognizesAccessKey="True"
- SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"/>
- <Ellipse
- Fill="DarkGray"
- Stroke="Gray"
- StrokeThickness="2"/>
- <Ellipse
- x:Name="Highlight"
- Fill="Lime"
- Stroke="Gray"
- StrokeThickness="2"/>
- </Grid>
- <ControlTemplate.Triggers>
- <Trigger Property="IsChecked" Value="True">
- <Setter TargetName="Highlight" Property="Visibility" Value="Visible"/>
- </Trigger>
- <Trigger Property="IsChecked" Value="False">
- <Setter TargetName="Highlight" Property="Visibility" Value="Collapsed"/>
- </Trigger>
- <Trigger Property="IsMouseOver" Value="False">
- <Setter TargetName="Highlight" Property="Opacity" Value="1"/>
- </Trigger>
- </ControlTemplate.Triggers>
- </ControlTemplate>
- </Setter.Value>
- </Setter>
- </Style>
- </UserControl.Resources>
- <Grid>
- <Grid.ColumnDefinitions>
- <ColumnDefinition Width="*"/>
- <ColumnDefinition Width="*"/>
- <ColumnDefinition Width="*"/>
- <ColumnDefinition Width="*"/>
- </Grid.ColumnDefinitions>
- <TabControl>
- <TabItem Header="DI">
- <ListView
- Name="DIListView"
- AlternationCount="2"
- FontSize="12"
- ItemsSource="{Binding Path=DIs}">
- <ListView.View>
- <GridView>
- <GridViewColumn
- Width="Auto"
- DisplayMemberBinding="{Binding Path=Index}"
- Header="Index"/>
- <GridViewColumn
- Width="Auto"
- DisplayMemberBinding="{Binding Path=Name}"
- Header="Name"/>
- <GridViewColumn
- Width="70"
- DisplayMemberBinding="{Binding Path=Address}"
- Header="Address"/>
- <GridViewColumn Width="50" Header="Status">
- <GridViewColumn.CellTemplate>
- <DataTemplate>
- <Grid Width="35">
- <views:IoButton
- HorizontalAlignment="Center"
- IsChecked="{Binding BoolValue, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
- ON="{Binding Path=BoolValue}"
- Style="{StaticResource Lamp-Button}"/>
- </Grid>
- </DataTemplate>
- </GridViewColumn.CellTemplate>
- </GridViewColumn>
- <GridViewColumn Width="50" Header="Hold">
- <GridViewColumn.CellTemplate>
- <DataTemplate>
- <CheckBox
- x:Name="ckHold"
- Width="25"
- Height="25"
- Margin="0,10,0,0"
- IsChecked="{Binding Path=HoldValue, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/>
- </DataTemplate>
- </GridViewColumn.CellTemplate>
- </GridViewColumn>
- </GridView>
- </ListView.View>
- </ListView>
- </TabItem>
- </TabControl>
- <TabControl Grid.Column="1">
- <TabItem Header="DO">
- <ListView
- Name="DOListView"
- Grid.Column="3"
- AlternationCount="2"
- FontSize="12"
- ItemsSource="{Binding Path=DOs}">
- <ListView.View>
- <GridView>
- <GridViewColumn
- Width="Auto"
- DisplayMemberBinding="{Binding Path=Index}"
- Header="Index"/>
- <GridViewColumn
- Width="Auto"
- DisplayMemberBinding="{Binding Path=Name}"
- Header="Name"/>
- <GridViewColumn
- Width="70"
- DisplayMemberBinding="{Binding Path=Address}"
- Header="Address"/>
- <GridViewColumn Width="50" Header="Status">
- <GridViewColumn.CellTemplate>
- <DataTemplate>
- <Grid Width="35">
- <views:IoButton
- Height="35"
- HorizontalAlignment="Center"
- IsChecked="{Binding BoolValue, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
- ON="{Binding Path=BoolValue}"
- Style="{StaticResource Lamp-Button}"/>
- </Grid>
- </DataTemplate>
- </GridViewColumn.CellTemplate>
- </GridViewColumn>
- <!--<GridViewColumn Width="50" Header="Hold">
- <GridViewColumn.CellTemplate>
- <DataTemplate>
- <CheckBox x:Name="ckHold" IsChecked="{Binding Path=HoldValue, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" Width="25" Height="25" Margin="0,10,0,0"></CheckBox>
- </DataTemplate>
- </GridViewColumn.CellTemplate>
- </GridViewColumn>-->
- </GridView>
- </ListView.View>
- </ListView>
- </TabItem>
- </TabControl>
- <TabControl Grid.Column="2">
- <TabItem Header="AI">
- <ListView
- Name="AIListView"
- AlternationCount="2"
- FontSize="12"
- ItemsSource="{Binding Path=AIs}">
- <ListView.View>
- <GridView>
- <GridViewColumn
- Width="Auto"
- DisplayMemberBinding="{Binding Path=Index}"
- Header="Index"/>
- <GridViewColumn
- Width="Auto"
- DisplayMemberBinding="{Binding Path=Name}"
- Header="Name"/>
- <GridViewColumn
- Width="70"
- DisplayMemberBinding="{Binding Path=Address}"
- Header="Address"/>
- <GridViewColumn Width="120" Header="Value">
- <GridViewColumn.CellTemplate>
- <DataTemplate>
- <TextBox
- Width="100"
- Height="20"
- Margin="0"
- Padding="0"
- Text="{Binding Path=ShortValue, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/>
- </DataTemplate>
- </GridViewColumn.CellTemplate>
- </GridViewColumn>
- <GridViewColumn Width="50" Header="Hold">
- <GridViewColumn.CellTemplate>
- <DataTemplate>
- <CheckBox
- x:Name="ckHold"
- Width="25"
- Height="25"
- Margin="0,10,0,0"
- IsChecked="{Binding Path=HoldValue, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/>
- </DataTemplate>
- </GridViewColumn.CellTemplate>
- </GridViewColumn>
- </GridView>
- </ListView.View>
- </ListView>
- </TabItem>
- </TabControl>
- <TabControl Grid.Column="3">
- <TabItem Header="AO">
- <ListView
- Name="AOListView"
- Grid.Column="1"
- AlternationCount="2"
- FontSize="12"
- ItemsSource="{Binding Path=AOs}">
- <ListView.View>
- <GridView>
- <GridViewColumn
- Width="Auto"
- DisplayMemberBinding="{Binding Path=Index}"
- Header="Index"/>
- <GridViewColumn
- Width="Auto"
- DisplayMemberBinding="{Binding Path=Name}"
- Header="Name"/>
- <GridViewColumn
- Width="70"
- DisplayMemberBinding="{Binding Path=Address}"
- Header="Address"/>
- <GridViewColumn Width="120" Header="Value">
- <GridViewColumn.CellTemplate>
- <DataTemplate>
- <TextBox
- Width="100"
- Height="20"
- Margin="0"
- Padding="0"
- Text="{Binding Path=ShortValue, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/>
- </DataTemplate>
- </GridViewColumn.CellTemplate>
- </GridViewColumn>
- <!--<GridViewColumn Width="50" Header="Hold">
- <GridViewColumn.CellTemplate>
- <DataTemplate>
- <CheckBox
- x:Name="ckHold"
- Width="25"
- Height="25"
- Margin="0,10,0,0"
- IsChecked="{Binding Path=HoldValue, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/>
- </DataTemplate>
- </GridViewColumn.CellTemplate>
- </GridViewColumn>-->
- </GridView>
- </ListView.View>
- </ListView>
- </TabItem>
- </TabControl>
- </Grid>
- </UserControl>
|