私の目標は、デザイナーでサイズを変更したときに再描画されるユーザーコントロールを作成することです。簡単にするために、usercontrolCrossを作成しました。(私はむしろWPFの初心者です)。
Cross.xaml:
<UserControl x:Class="WpfApplication2.Cross"
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"
mc:Ignorable="d"
d:DesignHeight="300" d:DesignWidth="300">
<Grid Name="Grid1">
</Grid>
</UserControl>
Cross.xaml.cs(ステートメントを使用しない):
namespace WpfApplication2
{
/// <summary>
/// Interaction logic for Cross.xaml
/// </summary>
///
public partial class Cross : UserControl
{
public Cross()
{
InitializeComponent();
Line l = new Line();
l.X1 = 0; l.Y1 = 0; l.X2 = 300; l.Y2 = 300;
l.Stroke = new SolidColorBrush(Colors.Black);
Grid1.Children.Add(l);
l = new Line();
l.X1 = 0; l.Y1 = 300; l.X2 = 300; l.Y2 = 0;
l.Stroke = new SolidColorBrush(Colors.Black);
Grid1.Children.Add(l);
}
}
}
したがって、デザイナーの十字のサイズを300から600に変更するときは、[0,0,300,300]、[0,300,300,0]ではなく[0,0,600,600]、[0,600,600,0]の2行が必要です。