使用以下代碼,我無法讓背景圖像以其原始大小顯示(它總是大一點)。我試圖改變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