alielie
2025-03-23 40014e6e41f1ec017a07b7a620b3c700807d0519
Plugin.ServoManage/ServoManage.xaml
@@ -1,4 +1,4 @@
<UserControl x:Class="Plugin.ServoManage.ServoManage"
<hb:PluginControl x:Class="Plugin.ServoManage.ServoManage"
             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" 
@@ -14,17 +14,40 @@
             Loaded="UserControl_Loaded"
             d:DesignHeight="450" d:DesignWidth="800">
    <UserControl.Resources>
        <Style x:Key="PrimaryButton" TargetType="Button" BasedOn="{StaticResource PrimaryButton}">
            <Setter Property="Padding" Value="15"/>
        </Style>
        <Style x:Key="LightBall" TargetType="Ellipse">
            <Setter Property="Height" Value="35"/>
            <Setter Property="Width" Value="35"/>
            <Setter Property="Fill" Value="{StaticResource Normal}"/>
            <Setter Property="Margin" Value="0,10,0,0"/>
            <Style.Triggers>
                <DataTrigger Binding="{Binding }" Value="1">
                    <Setter Property="Fill" Value="{StaticResource Ok}"/>
                </DataTrigger>
            </Style.Triggers>
        </Style>
        <Style x:Key="Desc" TargetType="Label">
            <Setter Property="Padding" Value="10"/>
            <Setter Property="FontSize" Value="12"/>
            <Setter Property="Padding" Value="10,15"/>
            <Setter Property="MinWidth" Value="90"/>
            <Setter Property="FontSize" Value="14"/>
            <Setter Property="BorderThickness" Value="1"/>
            <Setter Property="BorderBrush" Value="#3a3a3a"/>
            <Setter Property="HorizontalContentAlignment" Value="Center"/>
            <Setter Property="VerticalContentAlignment" Value="Center"/>
        </Style>
        <Style x:Key="ReadLabel" TargetType="Label" BasedOn="{StaticResource Desc}">
            <Setter Property="BorderThickness" Value="1,0,1,1"/>
            <Setter Property="Background" Value="LightGray"/>
        </Style>
        <Style x:Key="LabelText" TargetType="Label" BasedOn="{StaticResource Desc}">
            <Setter Property="BorderThickness" Value="1,0,1,1"/>
            <Setter Property="Cursor" Value="Hand"/>
        </Style>
        <Style x:Key="BDesc" TargetType="Label" BasedOn="{StaticResource Desc}">
@@ -33,6 +56,10 @@
        <Style x:Key="YDesc" TargetType="Label" BasedOn="{StaticResource Desc}">
            <Setter Property="Background" Value="#ffff00"/>
        </Style>
        <Style TargetType="GroupBox">
            <Setter Property="Padding" Value="5"/>
        </Style>
    </UserControl.Resources>
    
@@ -51,10 +78,8 @@
            <DockPanel Grid.ColumnSpan="2">
                <StackPanel DockPanel.Dock="Right" Style="{StaticResource ButtonGroup}">
                    <Button Style="{StaticResource AddBtn}" x:Name="addBtn" Click="Button_Click"/>
                    <Button Style="{StaticResource EditBtn}" x:Name="editBtn" Click="Button_Click"/>
                    <Button Style="{StaticResource RfhBtn}" x:Name="rfhBtn" Click="Button_Click"/>
                    <Button Style="{StaticResource DelBtn}" x:Name="delBtn" Click="Button_Click"/>
                    <Button Style="{StaticResource AddBtn}" x:Name="addServoBtn" Click="Button_Click"/>
                    <Button Style="{StaticResource RfhBtn}" x:Name="rfhServoBtn" Click="Button_Click"/>
                </StackPanel>
                <TextBlock Style="{StaticResource TitleBox}" Text="{DynamicResource svo.title}"/>
            </DockPanel>
@@ -102,9 +127,6 @@
                                                        </Setter.Value>
                                                    </Setter>
                                                </DataTrigger>
                                                <Trigger Property="IsChecked" Value="True">
                                                    <Setter Property="Background" Value="Red"/>
                                                </Trigger>
                                            </Style.Triggers>
                                        </Style>
                                    </ToggleButton.Style>
@@ -131,7 +153,8 @@
                                      IsReadOnly="False"
                                      SelectionMode="Single"
                                      BorderThickness="0"
                                      ItemsSource="{Binding Datas}">
                                      SelectedItem="{Binding SelectedServo}"
                                      ItemsSource="{Binding Servos}">
                                <DataGrid.Columns>
                                    <DataGridTemplateColumn Header="#" IsReadOnly="True" CanUserResize="False">
                                        <DataGridTemplateColumn.CellTemplate>
@@ -166,7 +189,6 @@
                                        </DataGridTemplateColumn.CellTemplate>
                                    </DataGridTemplateColumn>
                                </DataGrid.Columns>
                            </DataGrid>
                        </Grid>
@@ -203,136 +225,37 @@
                        </Grid.RowDefinitions>
                        <DockPanel>
                            <StackPanel Style="{StaticResource ButtonGroup}">
                                <TextBlock Style="{StaticResource TitleBox}"
                            <StackPanel Style="{StaticResource ButtonGroup}" HorizontalAlignment="Left">
                                <!--<TextBlock Style="{StaticResource TitleBox}"
                                           FontSize="{StaticResource ContentFontSize2}" 
                                           Text="{DynamicResource svo.product}"/>
                                <ComboBox x:Name="productInput" Style="{StaticResource FormComboxStyle}" MinWidth="180" />
                                           Text="{DynamicResource svo.product.model}"/>
                                <ComboBox x:Name="productInput"
                                          IsEnabled="{Binding HasSelectedServo}"
                                          SelectedItem="{Binding SelectedProduct}"
                                          ItemsSource="{Binding ServoProducts}"
                                          DisplayMemberPath="Model"
                                          Style="{StaticResource FormComboxStyle}" MinWidth="180" />
                                <Button Style="{StaticResource AddBtn}" Click="Button_Click"/>
                                <Button Style="{StaticResource EditBtn}" Click="Button_Click"/>
                                <Button Style="{StaticResource RfhBtn}" Click="Button_Click"/>
                                <Button Style="{StaticResource DelBtn}" Click="Button_Click"/>
                                <Button Style="{StaticResource AddBtn}" x:Name="addProductBtn" Click="Button_Click"/>
                                <Button Style="{StaticResource EditBtn}" x:Name="editProductBtn" Click="Button_Click"/>
                                <Button Style="{StaticResource RfhBtn}" x:Name="rfhProductBtn" Click="Button_Click"/>
                                <Button Style="{StaticResource DelBtn}" x:Name="delProductBtn" Click="Button_Click"/>-->
                            </StackPanel>
                        </DockPanel>
                        <WrapPanel Grid.Row="1">
                            <GroupBox Header="报警" Padding="10">
                                <StackPanel Style="{StaticResource ButtonGroup}">
                                    <StackPanel>
                                        <Label Style="{StaticResource YDesc}" Content="控制报警"/>
                                        <Label Style="{StaticResource LabelText}" Content="控制报警"/>
                                    </StackPanel>
                                    <StackPanel>
                                        <Label Style="{StaticResource YDesc}" Content="驱动报警"/>
                                        <Label Style="{StaticResource LabelText}" Content="控制报警"/>
                                    </StackPanel>
                                    <StackPanel>
                                        <Label Style="{StaticResource YDesc}" Content="故障驱动"/>
                                        <Label Style="{StaticResource LabelText}" Content="0"/>
                                    </StackPanel>
                                </StackPanel>
                            </GroupBox>
                        <Grid Grid.Row="1" dp:GridHelper.Space="10">
                            <Grid.RowDefinitions>
                                <RowDefinition Height="Auto"/>
                                <RowDefinition/>
                            </Grid.RowDefinitions>
                            <GroupBox Header="位置" Padding="10">
                                <StackPanel Style="{StaticResource ButtonGroup}">
                                    <StackPanel>
                                        <Label Style="{StaticResource BDesc}" Content="当前位置"/>
                                        <Label Style="{StaticResource LabelText}" Content="0"/>
                                    </StackPanel>
                            <Grid.ColumnDefinitions>
                                <ColumnDefinition Width="Auto"/>
                                <ColumnDefinition Width="Auto"/>
                                <ColumnDefinition Width="Auto"/>
                            </Grid.ColumnDefinitions>
                                    <StackPanel>
                                        <Label Style="{StaticResource BDesc}" Content="当前速度"/>
                                        <Label Style="{StaticResource LabelText}" Content="0"/>
                                    </StackPanel>
                                    <StackPanel>
                                        <Label Style="{StaticResource BDesc}" Content="加速度"/>
                                        <Label Style="{StaticResource LabelText}" Content="0"/>
                                    </StackPanel>
                                    <StackPanel>
                                        <Label Style="{StaticResource BDesc}" Content="减速度"/>
                                        <Label Style="{StaticResource LabelText}" Content="0"/>
                                    </StackPanel>
                                </StackPanel>
                            </GroupBox>
                            <GroupBox Header="状态" Padding="10">
                                <StackPanel Style="{StaticResource ButtonGroup}">
                                    <StackPanel>
                                        <Label Style="{StaticResource YDesc}" Content="使能"/>
                                        <Label Style="{StaticResource LabelText}">
                                            <Ellipse Height="30" Width="30" Fill="{StaticResource Normal}" />
                                        </Label>
                                    </StackPanel>
                                    <StackPanel>
                                        <Label Style="{StaticResource YDesc}" Content="准备好"/>
                                        <Label Style="{StaticResource LabelText}">
                                            <Ellipse Height="30" Width="30" Fill="{StaticResource Normal}" />
                                        </Label>
                                    </StackPanel>
                                    <StackPanel>
                                        <Label Style="{StaticResource YDesc}" Content="运行中"/>
                                        <Label Style="{StaticResource LabelText}">
                                            <Ellipse Height="30" Width="30" Fill="{StaticResource Normal}" />
                                        </Label>
                                    </StackPanel>
                                    <StackPanel>
                                        <Label Style="{StaticResource YDesc}" Content="故障"/>
                                        <Label Style="{StaticResource LabelText}">
                                            <Ellipse Height="30" Width="30" Fill="{StaticResource Normal}" />
                                        </Label>
                                    </StackPanel>
                                    <StackPanel>
                                        <Label Style="{StaticResource YDesc}" Content="轴报警"/>
                                        <Label Style="{StaticResource LabelText}">
                                            <Ellipse Height="30" Width="30" Fill="{StaticResource Normal}" />
                                        </Label>
                                    </StackPanel>
                                    <StackPanel>
                                        <Label Style="{StaticResource YDesc}" Content="代码"/>
                                        <Label Style="{StaticResource LabelText}">
                                            <Ellipse Height="30" Width="30" Fill="{StaticResource Normal}" />
                                        </Label>
                                    </StackPanel>
                                </StackPanel>
                            </GroupBox>
                            <GroupBox Header="限位传感器" Padding="10">
                                <StackPanel Style="{StaticResource ButtonGroup}" Orientation="Vertical">
                                    <StackPanel Orientation="Horizontal">
                                        <Label Style="{StaticResource YDesc}" Content="使能"/>
                                        <Label Style="{StaticResource LabelText}" BorderThickness="0,1,1,1" >
                                            <Ellipse Height="30" Width="30" Fill="{StaticResource Normal}" />
                                        </Label>
                                    </StackPanel>
                                    <StackPanel Orientation="Horizontal">
                                        <Label Style="{StaticResource YDesc}" Content="准备好"/>
                                        <Label Style="{StaticResource LabelText}" BorderThickness="0,1,1,1" >
                                            <Ellipse Height="30" Width="30" Fill="{StaticResource Normal}" />
                                        </Label>
                                    </StackPanel>
                                    <StackPanel Orientation="Horizontal">
                                        <Label Style="{StaticResource YDesc}" Content="运行中"/>
                                        <Label Style="{StaticResource LabelText}" BorderThickness="0,1,1,1" >
                                            <Ellipse Height="30" Width="30" Fill="{StaticResource Normal}" />
                                        </Label>
                                    </StackPanel>
                                </StackPanel>
                            </GroupBox>
                            <GroupBox Header="寸动" Padding="10">
                                <StackPanel Style="{StaticResource ButtonGroup}">
                                    <Button Style="{StaticResource PrimaryButton}">寸动</Button>
                                    <Label Style="{StaticResource LabelText}" BorderThickness="1" Content="准备好"/>
                                    <Button Style="{StaticResource PrimaryButton}">正向</Button>
                                </StackPanel>
                            </GroupBox>
                            <GroupBox Header="操作" Padding="10">
                            <GroupBox Header="{DynamicResource App.Opt}" Padding="10">
                                <Grid dp:GridHelper.Space="10">
                                    <Grid.RowDefinitions>
                                        <RowDefinition Height="Auto"/>
@@ -340,32 +263,251 @@
                                        <RowDefinition Height="Auto"/>
                                        <RowDefinition Height="Auto"/>
                                        <RowDefinition Height="Auto"/>
                                        <RowDefinition Height="Auto"/>
                                    </Grid.RowDefinitions>
                                    <Button Style="{StaticResource PrimaryButton}">调试模式</Button>
                                    <UniformGrid Grid.Row="1" Columns="2">
                                        <Button Style="{StaticResource PrimaryButton}"
                                                Margin="0,0,5,0">调试模式</Button>
                                        <Button Style="{StaticResource PrimaryButton}"
                                                Margin="5,0,0,0">调试模式</Button>
                                    </UniformGrid>
                                    <Button Grid.Row="2" Style="{StaticResource PrimaryButton}">初始化</Button>
                                    <Button Grid.Row="3" Style="{StaticResource PrimaryButton}">停止</Button>
                                    <UniformGrid Grid.Row="4" Columns="3">
                                        <Button Style="{StaticResource PrimaryButton}">调试模式</Button>
                                        <Label Style="{StaticResource LabelText}"
                                               Margin="10,0,10,0"
                                               BorderThickness="1" Content="准备好"/>
                                        <Button Style="{StaticResource PrimaryButton}">调试模式</Button>
                                    </UniformGrid>
                                    <Grid>
                                        <Grid.ColumnDefinitions>
                                            <ColumnDefinition Width="Auto"/>
                                            <ColumnDefinition/>
                                        </Grid.ColumnDefinitions>
                                        <Label
                                            Style="{StaticResource BDesc}" MinWidth="80" Padding="0"
                                            Content="{DynamicResource svo.product.model}"/>
                                        <ComboBox Grid.Column="1"  x:Name="productInput"
IsEnabled="{Binding HasSelectedServo}"
SelectedValue="{Binding SelectedProduct}"
ItemsSource="{Binding ServoProducts}"
SelectedValuePath="ProgramCode"
DisplayMemberPath="Model"
                                                  BorderThickness="0,1,1,1"
                                    FontSize="14"
                                    BorderBrush="Black"
Style="{StaticResource FormComboxStyle}" MinWidth="180" />
                                </Grid>
                                
                                    <Button Grid.Row="1" Style="{StaticResource PrimaryButton}"
                                            Content="{DynamicResource svo.debugMode}"/>
                                    <UniformGrid Grid.Row="2" Columns="2">
                                        <Button Margin="0,0,5,0" Tag="Enable" Click="Servo_Click">
                                            <Button.Style>
                                                <Style TargetType="Button" BasedOn="{StaticResource PrimaryButton}">
                                                    <Setter Property="Content" Value="{DynamicResource svo.enable}"/>
                                                    <Style.Triggers>
                                                        <DataTrigger Binding="{Binding Enable}" Value="1">
                                                            <Setter Property="Content" Value="{DynamicResource svo.disable}"/>
                                                        </DataTrigger>
                                                    </Style.Triggers>
                                                </Style>
                                            </Button.Style>
                                        </Button>
                                        <Button Style="{StaticResource PrimaryButton}"
 Margin="5,0,0,0" Content="{DynamicResource svo.reset}" Tag="Reset" Click="Servo_Click"/>
                                    </UniformGrid>
                                    <Button Grid.Row="3" Style="{StaticResource PrimaryButton}"
                                            Content="{DynamicResource svo.init}"
                                            Tag="Initialization" Click="Servo_Click"/>
                                    <Button Grid.Row="4" Style="{StaticResource PrimaryButton}"
                                            Content="{DynamicResource svo.stop}"
                                            Tag="Stop" Click="Servo_Click"/>
                                    <UniformGrid Grid.Row="5" Columns="3">
                                        <Button Style="{StaticResource PrimaryButton}"
                                                Content="{DynamicResource svo.JOG+}"
                                                Tag="JoGadd" Click="Servo_Click"/>
                                        <Label Style="{StaticResource LabelText}" MinWidth="90"
Margin="10,0,10,0"
BorderThickness="1" MouseLeftButtonUp="Label_MouseLeftButtonUp" Tag="JogVelocity" Content="{Binding JogVelocity}"/>
                                        <Button Style="{StaticResource PrimaryButton}"
                                                Content="{DynamicResource svo.JOG-}"
                                                Tag="JOGsub" Click="Servo_Click"/>
                                    </UniformGrid>
                                </Grid>
                            </GroupBox>
                            <StackPanel Grid.Column="1">
                                <GroupBox Header="{DynamicResource svo.position}">
                                    <Grid dp:GridHelper.Space="10">
                                        <Grid.RowDefinitions>
                                            <RowDefinition Height="Auto"/>
                                            <RowDefinition Height="Auto"/>
                                        </Grid.RowDefinitions>
                                        <Grid.ColumnDefinitions>
                                            <ColumnDefinition/>
                                            <ColumnDefinition/>
                                            <ColumnDefinition/>
                                            <ColumnDefinition/>
                                        </Grid.ColumnDefinitions>
                                        <StackPanel>
                                            <Label Style="{StaticResource BDesc}"
                                               Content="{DynamicResource svo.currentPosition}"/>
                                            <Label Style="{StaticResource ReadLabel}" Content="{Binding CurrentPosition}"/>
                                        </StackPanel>
                                        <StackPanel Grid.Column="1">
                                            <Label Style="{StaticResource BDesc}"
                                               Content="{DynamicResource svo.currentSpeed}"/>
                                            <Label Style="{StaticResource ReadLabel}" Content="{Binding CurrentSpeed}"/>
                                        </StackPanel>
                                        <StackPanel Grid.Column="2">
                                            <Label Style="{StaticResource BDesc}"
                                               Content="{DynamicResource svo.OverAcc}"/>
                                            <Label Style="{StaticResource LabelText}"
                                                   MouseLeftButtonUp="Label_MouseLeftButtonUp"
                                                   Tag="OverAcc"
                                                   Content="{Binding OverAcc}"/>
                                        </StackPanel>
                                        <StackPanel Grid.Column="3">
                                            <Label Style="{StaticResource BDesc}"
                                                   Content="{DynamicResource svo.OverDec}"/>
                                            <Label Style="{StaticResource LabelText}"
                                                   MouseLeftButtonUp="Label_MouseLeftButtonUp"
                                                   Tag="OverDec"
                                                   Content="{Binding OverDec}"/>
                                        </StackPanel>
                                        <StackPanel Grid.Row="1">
                                            <Label Style="{StaticResource BDesc}"
                                               Content="{DynamicResource svo.HMIPosition}"/>
                                            <Label Style="{StaticResource LabelText}"
                                                   MouseLeftButtonUp="Label_MouseLeftButtonUp"
                                                   Tag="HMIPosition" Content="{Binding HMIPosition}"/>
                                        </StackPanel>
                                        <StackPanel Grid.Row="1" Grid.Column="1">
                                            <Label Style="{StaticResource BDesc}"
                                               Content="{DynamicResource svo.HMISpeed}"/>
                                            <Label Style="{StaticResource LabelText}"
                                                   MouseLeftButtonUp="Label_MouseLeftButtonUp"
                                                   Tag="HMISpeed"
                                                   Content="{Binding HMISpeed}"/>
                                        </StackPanel>
                                        <Button Grid.Row="1" Grid.Column="2"
                                            Grid.ColumnSpan="2"
                                            Style="{StaticResource PrimaryButton}"
                                            Tag="AbsExecute"
                                            Click="Servo_Click"
                                            Content="{DynamicResource svo.absExecute}"/>
                                    </Grid>
                            </GroupBox>
                                <GroupBox Header="{DynamicResource svo.inching}">
                                    <DockPanel>
                                        <Button DockPanel.Dock="Left"
                                                Margin="0,0,10,0"
                                                Style="{StaticResource PrimaryButton}"
                                                Tag="Inch" Click="Servo_Click"
                                                Content="{DynamicResource svo.inching}"/>
                                        <Button DockPanel.Dock="Right"
                                                Tag="Dir" Click="Servo_Click">
                                            <Button.Style>
                                                <Style TargetType="Button" BasedOn="{StaticResource PrimaryButton}">
                                                    <Setter Property="Content" Value="{DynamicResource svo.forward}"/>
                                                    <Style.Triggers>
                                                        <DataTrigger Binding="{Binding Dir}" Value="1">
                                                            <Setter Property="Content" Value="{DynamicResource svo.backward}"/>
                                                        </DataTrigger>
                                                    </Style.Triggers>
                                                </Style>
                                            </Button.Style>
                                        </Button>
                                        <Label
                                             Margin="0,0,10,0"
                                            Style="{StaticResource LabelText}"
                                            MouseLeftButtonUp="Label_MouseLeftButtonUp"
                                            Tag="InchDistance"
                                            BorderThickness="1" Content="{Binding InchDistance}"/>
                                    </DockPanel>
                                </GroupBox>
                            </StackPanel>
                        </WrapPanel>
                            <StackPanel Grid.Column="2" HorizontalAlignment="Center">
                                <GroupBox Header="{DynamicResource svo.alarm}">
                                    <StackPanel Style="{StaticResource ButtonGroup}">
                                        <StackPanel>
                                            <Label Style="{StaticResource YDesc}"
                   Content="{DynamicResource svo.controlAlarm}"/>
                                            <Label Style="{StaticResource ReadLabel}" Content="{Binding AlarmCode}"/>
                                        </StackPanel>
                                        <StackPanel>
                                            <Label Style="{StaticResource YDesc}"
                   Content="{DynamicResource svo.driverAlarm}"/>
                                            <Label Style="{StaticResource ReadLabel}" Content="{Binding WarnCode}"/>
                                        </StackPanel>
                                        <StackPanel>
                                            <Label Style="{StaticResource YDesc}"
                   Content="{DynamicResource svo.faultDriven}"/>
                                            <Label Style="{StaticResource ReadLabel}" Content="{Binding FaultCode}"/>
                                        </StackPanel>
                                    </StackPanel>
                                </GroupBox>
                                <GroupBox Header="{DynamicResource svo.limitSensor}">
                                    <StackPanel Style="{StaticResource ButtonGroup}">
                                        <StackPanel>
                                            <Label Style="{StaticResource YDesc}"
                                                   Content="{DynamicResource svo.limit+}"/>
                                            <Ellipse Style="{StaticResource LightBall}" DataContext="{Binding PositiveLimit}" />
                                        </StackPanel>
                                        <StackPanel>
                                            <Label Style="{StaticResource YDesc}"
                                                   Content="{DynamicResource svo.limit0}"/>
                                            <Ellipse Style="{StaticResource LightBall}" DataContext="{Binding HomeSwitch}" />
                                        </StackPanel>
                                        <StackPanel>
                                            <Label Style="{StaticResource YDesc}"
                                                   Content="{DynamicResource svo.limit-}"/>
                                            <Ellipse Style="{StaticResource LightBall}" DataContext="{Binding NegativeLimit}" />
                                        </StackPanel>
                                    </StackPanel>
                                </GroupBox>
                            </StackPanel>
                            <StackPanel Grid.Row="1" Grid.ColumnSpan="2">
                                <GroupBox Header="{DynamicResource svo.status}">
                                    <StackPanel Style="{StaticResource ButtonGroup}" HorizontalAlignment="Center">
                                        <StackPanel>
                                            <Label Style="{StaticResource YDesc}"
                                                   Content="{DynamicResource svo.enable}"/>
                                            <Ellipse Style="{StaticResource LightBall}" DataContext="{Binding AxisEnabled}"/>
                                        </StackPanel>
                                        <StackPanel>
                                            <Label Style="{StaticResource YDesc}"
                                                   Content="{DynamicResource svo.isReady}"/>
                                            <Ellipse Style="{StaticResource LightBall}" DataContext="{Binding ReadyOK}" />
                                        </StackPanel>
                                        <StackPanel>
                                            <Label Style="{StaticResource YDesc}"
                                                   Content="{DynamicResource svo.isRunning}"/>
                                            <Ellipse Style="{StaticResource LightBall}" DataContext="{Binding Running}" />
                                        </StackPanel>
                                        <StackPanel>
                                            <Label Style="{StaticResource YDesc}"
           Content="{DynamicResource svo.reOriginOk}"/>
                                            <Ellipse Style="{StaticResource LightBall}" DataContext="{Binding Homed}" />
                                        </StackPanel>
                                        <StackPanel>
                                            <Label Style="{StaticResource YDesc}"
                                                   Content="{DynamicResource svo.fault}"/>
                                            <Ellipse Style="{StaticResource LightBall}" DataContext="{Binding AxisError}" />
                                        </StackPanel>
                                        <StackPanel>
                                            <Label Style="{StaticResource YDesc}"
                                                   Content="{DynamicResource svo.axisAlarm}"/>
                                            <Ellipse Style="{StaticResource LightBall}" DataContext="{Binding AxisWarn}" />
                                        </StackPanel>
                                        <StackPanel>
                                            <Label Style="{StaticResource YDesc}"
                                                   Content="{DynamicResource svo.code}"/>
                                            <Label Style="{StaticResource ReadLabel}" Content="{Binding PosCode}"/>
                                        </StackPanel>
                                    </StackPanel>
                                </GroupBox>
                            </StackPanel>
                        </Grid>
                    </Grid>
                </Border>
            </DockPanel>
        </Grid>
    </Border>
</UserControl>
</hb:PluginControl>