C #: LockBits puts aus einem riesigen roten X
Frage
Im Anschluss an Bob Powells Tutorial auf LockBits , habe ich den folgenden Code in C # 2010 Visual Studio Express :
System.Drawing.Imaging.BitmapData bmp =
BitmapImage
.LockBits(new Rectangle(0, 0, 800, 600),
System.Drawing.Imaging.ImageLockMode.ReadWrite,
MainGrid.PixelFormat)
unsafe
{
for (int y = 0; y < bmp.Height; y++)
{
byte* row = (byte*)bmp.Scan0 + (y * bmp.Stride);
for (int x = 0; x < bmp.Width; x++)
{
row[x * 4] = 255;
}
}
}
Nachdem die Bitmap-Daten in eine picturebox schieben (picturebox.Image = Bitmap;) alles, was ein rotes x über einem weißen Hintergrund kommt aus ist, mit einem roten Rand. Was mache ich falsch?
Lösung
Sie haben UnlockBits
am Ende am Ende der Verbindung, wie vorgeschlagen zu nennen vergessen http: // www. bobpowell.net/lockingbits.htm
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow