Мне трудно решить эту проблему.
Я создаю программу, которая рисует прямоугольник на холсте, а фон - это элемент управления изображением с панорамированием и масштабированием с помощью этого кода Pan & Zoom Image .Затем я добавил свойство зависимости, которое возвращает базу Rect из позиции мыши. Но когда размер окна изменяется, нарисованный прямоугольник не корректируется.но изображение корректируется
Вот код Xaml
<dpzrm:ZoomBorder IsDrawing="True" Rect="{Binding Rect}">
<Grid>
<Image Source="img_05_l.jpg" x:Name="img"/>
<ItemsControl ItemsSource="{Binding RectItems}">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<Canvas />
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemContainerStyle>
<Style TargetType="ContentPresenter">
<Setter Property="Canvas.Left" Value="{Binding X}"/>
<Setter Property="Canvas.Top" Value="{Binding Y}"/>
</Style>
</ItemsControl.ItemContainerStyle>
<ItemsControl.ItemTemplate>
<DataTemplate>
<Rectangle Width="{Binding Width}" Height="{Binding Height}" Fill="Black"/>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
</Grid>
</dpzrm:ZoomBorder>
Ниже приведен пример скриншота
![enter image description here](https://i.stack.imgur.com/fdvOj.jpg)
Вот как это выглядит, когда я изменяю размер окна
![enter image description here](https://i.stack.imgur.com/W4uMj.png)
С кодами выше позиция рисования правильная (при рисовании с помощью мыши она падает вправильные координаты с помощью мыши), но когда я изменяю размер окна.нарисованный прямоугольник не следует.
<Canvas Height="{Binding ActualHeight, ElementName=img}" Width="{Binding ActualWidth, ElementName=img}"/>
Но когда я добавлю этот код в привязку.Рисунок с помощью мыши не попадает в правильные координаты.И когда я изменяю размер окна.Нарисованный прямоугольник не корректируется
Нарисованный прямоугольник неправильный.Правильно ли я привязываю изображение?