C# WPF-画布背景不显示
我是WPF的新手。我在一个私人项目上工作了大约两周。它一直在前进,突然遇到了路障。在我改变一些事情之前,一切都很顺利 它基本上是一张卫星地图作为画布背景,这样我就可以在上面叠加几何图形。图像为10000x1000,未更改。它被添加为一个资源和。。。有趣的是,它出现在VisualBasicXAML设计器中 local:ZoomOrder类缩放/平移viewbox/canvas。我没有发布代码,因为自从上次运行以来,它一直没有被触动过 正在将几何图形正确添加到画布 我移动了一些维度,直到网格移动。比如添加边距之类的,但无论我做什么,都无法恢复显示imagebrush背景C# WPF-画布背景不显示,c#,wpf,background,wpf-controls,imagebrush,C#,Wpf,Background,Wpf Controls,Imagebrush,我是WPF的新手。我在一个私人项目上工作了大约两周。它一直在前进,突然遇到了路障。在我改变一些事情之前,一切都很顺利 它基本上是一张卫星地图作为画布背景,这样我就可以在上面叠加几何图形。图像为10000x1000,未更改。它被添加为一个资源和。。。有趣的是,它出现在VisualBasicXAML设计器中 local:ZoomOrder类缩放/平移viewbox/canvas。我没有发布代码,因为自从上次运行以来,它一直没有被触动过 正在将几何图形正确添加到画布 我移动了一些维度,直到网格移动。比
<Window x:Class="Temp.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:Temp"
Title="MainWindow" Height="930" Width="1100" PreviewKeyDown="mapBorder_PreviewKeyDown">
<Grid Margin="5">
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" MinWidth="210" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<ScrollViewer Grid.Row="2" Grid.Column="0">
<StackPanel Name="stackPanel" />
</ScrollViewer>
<local:ZoomBorder x:Name="mapBorder" Background="Gray" Margin="0" Grid.Column="1" Grid.Row="2" ClipToBounds="True">
<Viewbox>
<Canvas Name="mapGrid" Height="10000" Width="10000">
<Canvas.Background>
<ImageBrush ImageSource="map.jpg"/>
</Canvas.Background>
</Canvas>
</Viewbox>
</local:ZoomBorder>
<Button Grid.Column="0" Grid.Row="1" HorizontalAlignment="Left" MinWidth="80" Margin="10,0,0,0" Content="Start Refresh" Width="80" Click="buttonStartRefresh" />
<Button Grid.Column="0" Grid.Row="1" HorizontalAlignment="Left" MinWidth="80" Margin="110,0,0,0" Content="Stop Refresh" Width="80" Click="buttonStopRefresh" />
<CheckBox Name="Advanced" Grid.Column="1" Grid.Row="1" Margin="10,0,0,0">
<Label Margin="0,-5,0,0">Advanced</Label>
</CheckBox>
</Grid>
</Window>
要检查可执行文件是否能够找到图像,可以在ImageSource中包含图像的绝对路径,并查看它是否显示。正在将图像添加到更大尺寸的可执行文件中,我也尝试了绝对路径:确保您的map.jpg被添加为资源或至少是内容。要检查它,请右键单击项目树视图下的图像,选择“属性”,您将在“生成操作”中看到当前设置。它将作为资源添加:更新:所以,当我调试程序时。。。背景显示。当我构建时,它不会。另外,如果我将背景更改为一种颜色,效果会很好,图像应该在哪里。