Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在WPF中保存透明画布时出现问题_Wpf - Fatal编程技术网

在WPF中保存透明画布时出现问题

在WPF中保存透明画布时出现问题,wpf,Wpf,我已经在WPF中创建了一个红色背景的网格。网格包含一个固定大小的透明画布。现在,在尝试将画布导出为图像时,我得到了一个黑色背景的图像。但当画布上有一些颜色(比如说白色或红色)时,我得到了一个合适的图像。有谁能告诉我,如果画布是透明的,为什么图像会产生黑色背景 例如: Grid grid = new Grid(); grid.Background = new SolidColorBrush(Colors.Red); grid.Width = 500;

我已经在WPF中创建了一个红色背景的网格。网格包含一个固定大小的透明画布。现在,在尝试将画布导出为图像时,我得到了一个黑色背景的图像。但当画布上有一些颜色(比如说白色或红色)时,我得到了一个合适的图像。有谁能告诉我,如果画布是透明的,为什么图像会产生黑色背景

例如:

Grid grid = new Grid();
            grid.Background = new SolidColorBrush(Colors.Red);
            grid.Width = 500;
            grid.Height = 300;

            Canvas c = new Canvas();
            c.Width = 500;
            c.Height = 300;
            c.Background = new SolidColorBrush(Colors.Transparent);
            c.MouseLeftButtonUp += new MouseButtonEventHandler(c_MouseLeftButtonUp);

            grid.Children.Add(c);

            LayoutRoot.Children.Add(grid);
在画布的MouseEvent处理程序中,我将其保存为jpg图像

在画布的MouseEvent处理程序中,我将其保存为jpg图像


将其另存为
PNG
。这些类型的图像专门用于保存透明背景。

您可以将用于保存图像的代码发布到xaml.cs文件中吗?但为什么jpg无法实现?这就是jpg作为一种格式的目的。。。。(没有透明度)。。。。看到这个了吗