使用以下代码,我无法让背景图像以其原始大小显示(它总是大一点)。我试图改变Stretch
财产,但“无”似乎是最合适的价值。背景图像将不会以其原始大小显示
<Canvas Width="500" Height="500">
<Canvas.Background>
<ImageBrush
ImageSource="{Binding ElementName=w_window, Path=BackgroundImagePath}"
Stretch="None"
AlignmentX="Left"
AlignmentY="Top"
/>
</Canvas.Background>
</Canvas>
在下面的图片,你可以看到在左边和图片浏览器(设置为原始大小),在右边我的应用程序。
有什么建议吗? (顺便说一句,设置ClipToBounds="True"
不起作用。)
看来我的问题不限于图像是背景的时候。以下代码(其中Image
是唯一元素)具有相同的大小问题。这不仅仅是我的机器有这个问题(即应用程序在其他机器上有这个问题)。
<Window x:Class="DiagramDesigner.Window2"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Window2" Height="300" Width="1000">
<Image
Source="C:\Users\patk\Downloads\Bottom_wnums.jpg"
Stretch="None"
HorizontalAlignment="Left"
VerticalAlignment="Top"
/>
</Window>
你上面写的(用硬编码文件替换ImageSource)对我来说工作正常。你能添加一个截图吗? – 2010-10-18 18:48:05
上面的Canvas是否包含在ViewBox控件中? – ASanch 2010-10-18 19:40:23
@karmicpuppet:不,但我注意到ImageBrush具有Viewbox和Viewport属性。我应该尝试手动设置它们吗? – Pat 2010-10-18 20:17:10