Привязка размера холста к размеру изображения на его фоне ImageBrush - PullRequest
1 голос
/ 21 декабря 2011

У меня есть холст, размер которого должен соответствовать фону ImageBrush.

Одно из препятствий здесь заключается в том, что создается экземпляр элемента управления, а затем изображение передается и назначается в качестве ImageBrush. Другое препятствие заключается в том, что я делаю этот элемент управления как для WPF, так и для Silverlight, а ImageBrush отличается (т. Е. У них нет общих событий).

Edit:

<UserControl x:Class="Escalon.Annotations.AnnotationControl"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Height="400" Width="500" >
    <ScrollViewer Name="ctlScrollViewer" HorizontalScrollBarVisibility="Auto" Height="400" Width="500">
        <Canvas Name="ctlSizingCanvas" >
            <Canvas  Name="ctlCanvas" Loaded="ctlCanvas_Loaded" Height="400" Width="500"
                MouseLeftButtonDown="MouseLeftButtonDownHandler" MouseMove="Canvas_MouseMove" MouseLeftButtonUp="Canvas_MouseLeftButtonUp" >
                <Canvas.RenderTransform>
                    <ScaleTransform x:Name="ctlZoomTransform" />
                </Canvas.RenderTransform>
                <Canvas.Background>
                    <ImageBrush ImageSource="{Binding Source}" Stretch="UniformToFill" ></ImageBrush>
                </Canvas.Background>
            </Canvas>
        </Canvas>
    </ScrollViewer>
</UserControl>

Проблема в том, что я не использую элемент управления Image, я использую элемент управления ImageBrush, который не имеет высоты и ширины.

1 Ответ

0 голосов
/ 21 декабря 2011

Вместо использования ImageBrush я просто добавил изображение на холст и привязал размер холста к размеру изображения.

...