Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-cloud-platform/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# WPF中的图像放大_C#_Wpf_Image_Xaml_Image Enlarge - Fatal编程技术网

C# WPF中的图像放大

C# WPF中的图像放大,c#,wpf,image,xaml,image-enlarge,C#,Wpf,Image,Xaml,Image Enlarge,我有一个WPF应用程序,它检查某个父目录中的新图像,如果有新图像,它会切换当前显示的图像(我有6个图像) 我想添加一项功能,允许用户点击其中一幅图像,点击后,将出现一个“新建”窗口,显示放大的图像,再次点击屏幕上的任何位置将退出放大,并将焦点放回其他(6)幅图像 可能吗?我尝试用谷歌搜索zoom image wpf,但只找到了鼠标拖动相关解决方案 我也尝试过使用viewport,但效果也不太好 更新-XAML <Grid Grid.Row="0"> <Group

我有一个
WPF
应用程序,它检查某个父目录中的新图像,如果有新图像,它会切换当前显示的图像(我有6个图像)

我想添加一项功能,允许用户点击其中一幅图像,点击后,将出现一个“新建”窗口,显示放大的图像,再次点击屏幕上的任何位置将退出放大,并将焦点放回其他(6)幅图像

可能吗?我尝试用谷歌搜索
zoom image wpf
,但只找到了
鼠标拖动
相关解决方案

我也尝试过使用
viewport
,但效果也不太好

更新-XAML

<Grid Grid.Row="0">
        <GroupBox  x:Name="AccuracyGraphsGroupBox" Header="Accuracy" Foreground="Red">
            <Grid >
                <Grid.ColumnDefinitions>
                    <ColumnDefinition Width="0.5*" />
                    <ColumnDefinition Width="0.5*" />
                </Grid.ColumnDefinitions>
                <Image Grid.Column="0" Width="Auto" Height="Auto" Stretch="Fill" x:Name="AccuracyPicBox" MouseUp="AccuracyPicBox_OnMouseUp"></Image>
                <Image Grid.Column="1" Width="Auto" Height="Auto" Stretch="Fill" x:Name="AccuracyPerioPicBox" MouseUp="AccuracyPerioPicBox_OnMouseUp"></Image>
            </Grid>
        </GroupBox>
    </Grid>

正如评论中提到的那些家伙,您最好使用
工具提示来弹出您的全尺寸图像。数据绑定
图像时有点问题。源
值来自
工具提示中的原始
图像
,因为它们不是普通UI可视化树的一部分,并且存在于它们自己的树中。但是,我们可以通过以下方法克服这一问题:



当然,您可以在两个
Image.Source
属性中使用相同的
绑定路径
,但我从不喜欢重复代码。

只需创建一个大小合适的
。默认设置将放大图片,使其符合边界。您应该将此设置为答案Nico-只需添加一点XAML以显示相关属性我将
的大小设置为
Auto
,放在一个组框中。我想向其中添加
MouseUp
事件,当捕捉到该事件时,我想放大显示此图像,但保留原始图像。我正在用当前的
Xaml
@Idanis编辑我的问题,听起来弹出窗口将是一个更好的解决方案检查此链接,我希望它能帮助您
<Image Name="Image" Source="/WpfApplication1;component/Images/Tulips.jpg" Height="100"
    Stretch="Uniform">
    <Image.ToolTip>
        <ToolTip DataContext="{Binding PlacementTarget, 
            RelativeSource={RelativeSource Self}}">
            <Border BorderBrush="Black" BorderThickness="1" Margin="5,7,5,5">
                <Image Source="{Binding Source}" Stretch="None" />
            </Border>
        </ToolTip>
    </Image.ToolTip>
</Image>