如何设置网格背景

本文关键字:网格 背景 设置 何设置 | 更新日期: 2023-09-27 18:28:57

我有一个BitmapImage,并希望将其设置为GridBackground。我试过这个

xaml:

<Grid x:Name="ContentPanel">
    <Grid.Background>
        <ImageBrush x:Name="imgBg" />
    </Grid.Background>
</Grid>

c#:

        BitmapImage bmp = new BitmapImage();
        bmp.DecodePixelWidth =(int) scrnWidth;
        bmp.DecodePixelHeight = (int)scrnHeight;
        bmp.SetSource(e.ChosenPhoto);
        ImageBrush ib = new ImageBrush() { ImageSource = bmp };
        imgBg.ImageSource = ib.ImageSource;

输出:输出为黑色。

问题:使用上面的代码,我无法将bitmapimage设置为Grid元素的background,我遗漏了什么吗?

更新我知道,当我们将image设置为backgroundgrid时,效果很好,比如:

ImageBrush ib = new ImageBrush() { ImageSource = bmp };
ContentPanel.Background = ib;

但我需要使用xaml的方式,问题是一样的。

如何设置网格背景

<Grid x:Name="ContentPanel">
    <Grid.Background>
        <ImageBrush Stretch="None" 
                    ImageSource="Your Path/source" 
                    AlignmentY="Center" 
                    AlignmentX="Center" />
    </Grid.Background>
</Grid>

这可能会对你有所帮助,不能向你保证,但请尝试一下。此处