WPF에서 캔버스 배경을 어떻게 정렬 할 수 있습니까?
문제
회사 로고 이미지에 캔버스 배경을 설정했습니다. 이 이미지가 캔버스의 오른쪽 하단에 정렬되기를 원합니다.
이를 수행 할 수 있습니까, 아니면 이미지가 어린이로서 캔버스에 추가되기 위해 필요합니까? 캔버스의 모든 어린이가 다르게 처리 되므로이 프로그램에서는 작동하지 않습니다.
감사합니다
해결책
이것이 효과가 있습니까? (어쨌든 나를 위해 일했다.)
<Canvas>
<Canvas.Background>
<ImageBrush ImageSource="someimage.jpg" AlignmentX="Right"
AlignmentY="Bottom" Stretch="None" />
</Canvas.Background>
</Canvas>
다른 팁
AFAIK WPF 캔버스는 절대 좌표를 사용하여 자식 UI 요소를 배치해야합니다. 오른쪽 병에 걸린 효과를 얻으려면 창 크기 조정 이벤트 처리, 재 계산 및 상단, 왼쪽 코디네이터를 적용하십시오. 자식 이미지 요소가 항상 오른쪽 엉덩이 코너를 고수하려면.
<Window x:Class="HelloWPF.Window1" xmlns...
Title="Window1" Height="300" Width="339">
<Canvas>
<Image Canvas.Left="195" Canvas.Top="175" Height="87" Name="image1" Stretch="Fill" Width="122" Source="dilbert2666700071126ni1.gif"/>
</Canvas>
</Window>
그리드 제어 내부에 캔버스와 이미지를 포함하는 것은 어떻습니까?
<Window ...>
<Grid>
<Canvas/>
<Image HorizontalAlignment="Right" VerticalAlignment="Bottom" .../>
<Grid>
</Window>
이것은 캔버스 내부의 테두리를 사용하여 이미지를 정렬하는 솔루션입니다. 이 솔루션은 캔버스가 조정 될 때 잘 작동합니다.
<Canvas x:Name="MiCanvas" Height="250" Width="500" Background="Aqua">
<Border x:Name="MiBorderImage"
Width="{Binding ElementName=MiCanvas, Path=ActualWidth}"
Height="{Binding ElementName=MiCanvas, Path=ActualHeight}"
Background="Transparent">
<Image x:Name="MiImage" Source="/GraphicsLibrary/Logos/MiLogo.png"
HorizontalAlignment="Right"
VerticalAlignment="Bottom"
Stretch="None" />
</Border>
</Canvas>
제휴하지 않습니다 StackOverflow