gpt4 book ai didi

c# - 图像缩放后我如何更新滚动查看器?

转载 作者:太空宇宙 更新时间:2023-11-03 17:52:20 25 4
gpt4 key购买 nike

我在缩放图像后更新 ScrollViewer 时遇到一个大问题。我尝试调用方法 UpdateLayout,但一切都完好无损。图像缩放没有问题,但滚动条保持不变。

几个小时后,我在堆栈溢出和谷歌上寻找不同的解决方案,但没有,我失败了。XAML:

        <ScrollViewer x:Name="imagescrl" Grid.Row="1" VerticalScrollBarVisibility="Auto" CanContentScroll="True" HorizontalScrollBarVisibility="Auto" >
<Image x:Name="imgp" VerticalAlignment="Center" HorizontalAlignment="Center">
<Image.RenderTransform>
<TransformGroup>
<ScaleTransform ScaleX="0.01" ScaleY="0.01"/>
<ScaleTransform x:Name="imgpScale">
<ScaleTransform.ScaleX>
<Binding ElementName="sldZoom" Path="Value" Mode="OneWay"/>
</ScaleTransform.ScaleX>
<ScaleTransform.ScaleY>
<Binding ElementName="sldZoom" Path="Value" Mode="OneWay"/>
</ScaleTransform.ScaleY>
</ScaleTransform>
</TransformGroup>
</Image.RenderTransform>
</Image>
</ScrollViewer>
...
...


<Slider ValueChanged="Slider_ValueChanged" x:Name="sldZoom" BorderThickness="11,20,0,5" Maximum="250" Minimum="1" Value="100" Width="153"/>

谢谢

c#:

private void Slider_ValueChanged(object sender,RoutedPropertyChangedEventArgs<double> e)
{
imagescrl.UpdateLayout();
}

最佳答案

你需要使用

<Image.LayoutTransform> 

代替

<Image.RenderTransform>

而且后端代码中不需要事件

关于c# - 图像缩放后我如何更新滚动查看器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21027816/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com