C# WPF中的图像覆盖?

C# WPF中的图像覆盖?,c#,wpf,image,xaml,C#,Wpf,Image,Xaml,我正在尝试创建一个动画叠加,与下面的透明部分图像大小相同。我遇到的问题是覆盖的透明部分在画布中显示为黑色,或者从一开始就没有真正设置为透明。 覆盖是视图模型的一个属性: this.Logger.Trace(“覆盖启动”); 位图bmp=新位图(this.imageWidth、this.imageHeight、PixelFormat.format8bppingdexed); System.Drawing.Imaging.ColorPalette myPalette=bmp.Palette; 对于(

我正在尝试创建一个动画叠加,与下面的透明部分图像大小相同。我遇到的问题是覆盖的透明部分在画布中显示为黑色,或者从一开始就没有真正设置为透明。 覆盖是视图模型的一个属性:

this.Logger.Trace(“覆盖启动”);
位图bmp=新位图(this.imageWidth、this.imageHeight、PixelFormat.format8bppingdexed);
System.Drawing.Imaging.ColorPalette myPalette=bmp.Palette;
对于(int x=0;x<256;x++)
{
myPalette.Entries[x]=System.Drawing.Color.FromArgb(x,x,x);
}
bmp.palete=mypalete;
//创建位图数据并锁定所有要写入的像素
BitmapData bmpData=bmp.LockBits(
新矩形(0,0,bmp.Width,bmp.Height),
ImageLockMode.WriteOnly,
像素格式);
for(int-iRow=0;iRow
以下是XAML:



根本不需要这样做;使用已填充alpha层的PNG格式图像。其余的都会“正常工作”。

为什么不使用已经设置了透明度的PNG图像呢?是的,这就是我问的。是的,我看到了(你应该回答!)。这是唯一有意义的事情。。。不知道为什么一个人会跳过这么多的环。