XAML - 更改背景图片会删除文本框

时间:2016-01-27 11:05:57

标签: c# xaml

我正在制作Windows 8 Universal应用。为了实现悬停效果,我想更改stackpanel的背景图像。此stackpanel包含一个文本块,一旦我更改背景图像就会消失。

这是C#

//Creating a background image
var brush = new ImageBrush();
brush.ImageSource = new BitmapImage(new Uri("ms-appx:/Assets/newprojectblue.png"));
//Adding the background to the panel
panel.Background = brush;

//Changing the color of the text
paneltext.Foreground = new SolidColorBrush(Windows.UI.Color.FromArgb(1, 255, 255, 255));

这是XAML

<StackPanel x:Name="panel" HorizontalAlignment="Left" Height="90" Margin="177,250,0,0" VerticalAlignment="Top" Width="355" Background="#FFEBEFFE" RenderTransformOrigin="0.5,0.5" PointerEntered="panel_PointerEntered" PointerExited="panel_PointerExited">        
    <TextBlock x:Name="paneltext" TextWrapping="Wrap" Text="TextBlock" HorizontalAlignment="Right" Margin="158,0,31,0" Height="63"  FontSize="30" Width="166" VerticalAlignment="Center" Foreground="#FF4183D7" Canvas.ZIndex="1000" />
</StackPanel>

我认为这不是Z索引错误。

1 个答案:

答案 0 :(得分:2)

您将alpha设置为1,非常透明(不可见)。如果你认为它在[0.0;1.0]范围内,那么你是wrong,它在[0;255]范围内:

// wrong
FromArgb(1, 255, 255, 255)

// correct
FromArgb(255, 255, 255, 255)