WPF 按钮不能显示图片和不能同时显示图片和文字的办法
1.单图片不能显示的程序段是红色加粗的部分:
现象:在设计模式下是可以看到按钮上的图像,但是运行后无图像显示。原因:这是因为路径问题,图片放到了项目文件夹下,但是运行时是从Bin\Debug文件夹开始运行,找不到图片。将图片拷贝到资源文件夹下解决。
不解点:为什么我把图片放到Bin\Debug文件夹下还是无法加载图片呢?
<Window x:Class="布局和控件.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:local="clr-namespace:布局和控件" mc:Ignorable="d" Title="MainWindow" Height="350" Width="525"> <Grid> <Button> <StackPanel Orientation="Horizontal" > <Image Source="../资源/何善波.PNG" Width="136" Margin="5"/> <!-- <Image Source=".\何善波.PNG" Width="136" Margin="10"/>--> <TextBlock Text="hello"/> </StackPanel> </Button> </Grid> </Window>
2.按钮无法添加多个元素,如字体和图片
Button的派生自ContentCotrol类,ContentControl只能由单一元素充当其内容。控件的内容也可以是控件,因此可以添加一个布局控件把图片和文字包含进去(来自《深入浅出WPF》)。如上面的源码StackPanel。
ContentControl包含的控件: