Заранее извините, поскольку у меня возникли проблемы с попыткой придумать лучший способ донести мою проблему не слишком расплывчато в названии, но немного легче понять, когда я объясню контекст.
По сути, у меня есть поле изменяемого размера, состоящее из элементов управления Thumb с надписью над ним, которая помечает связанный с ним блок с подробным описанием того, что это такое.
Проблема здесь в том, что при изменении размера текстового блока также изменяется размер, но это происходит только тогда, когда я изменяю ширину поля. То же самое не происходит, когда я изменяю размер окна по высоте, но моя цель - не изменять его вообще.
Предварительный просмотр действия по изменению размера
Я понимаю, что, поскольку текстовый блок сгруппирован с элементом управления изменением размера внутри шаблона элемента управления, то имеет смысл для него наряду с другими элементами управления родственного элемента быть затронутым изменением размера, но я не понимаю, почему он работает только тогда, когда На ширину элемента влияет.
Моя цель здесь - найти способ сделать так, чтобы на ярлыки не влияло действие изменения размера, но чтобы оно оставалось с соответствующим ящиком в одно и то же время (в случае, если пользователь решит переместить ящик на другое положение)
Вот код для шаблона управления:
<!-- Designer Item Template-->
<ControlTemplate x:Key="DesignerItemTemplate" TargetType="ContentControl">
<Grid x:Name="DesignerGrid" DataContext="{Binding RelativeSource={RelativeSource TemplatedParent}}">
<s:MoveThumb x:Name="MoveThumbAdorner" Template="{StaticResource MoveThumbTemplate}" Cursor="SizeAll"/>
<Control Template="{StaticResource ResizeDecoratorTemplate}"/>
<ContentPresenter x:Name="rectCP" Content="{TemplateBinding ContentControl.Content}"/>
<Border x:Name="BoxLabelBorder" VerticalAlignment="Top" HorizontalAlignment="Left" Margin="5,-35" Background="#EEEEEE" BorderBrush="Black" BorderThickness="2" CornerRadius="3">
<Grid x:Name="BoxLabelGrid" Margin="5">
<StackPanel x:Name="BoxLabelStackPanel" Orientation="Horizontal">
<TextBlock Foreground="Black" Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Name, Mode=TwoWay}"/>
<Button x:Name="DelClassBtn" Margin="5,0,0,0" Height="15" MinWidth="15" Width="15" Click="DelClassBtn_Click">
<Button.Style>
<Style TargetType="{x:Type Button}">
<Setter Property="Background" Value="#EEEEEE"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Button}">
<Border Background="{TemplateBinding Background}">
<ContentPresenter Focusable="False" HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="true">
<Setter Property="Background" Value="#d6d6d6"/>
</Trigger>
<Trigger Property="IsPressed" Value="true">
<Setter Property="Background" Value="#bebebe"/>
</Trigger>
<Trigger Property="IsEnabled" Value="false">
<Setter Property="Opacity" Value=".35"/>
</Trigger>
</Style.Triggers>
</Style>
</Button.Style>
<Image HorizontalAlignment="Center" VerticalAlignment="Center" Height="7" Width="7" Source="/Resources/Images/cross_48.png" />
</Button>
</StackPanel>
</Grid>
</Border>
</Grid>
</ControlTemplate>