Estoy trabajando en contacto con el administrador de aplicaciones de escritorio en Windows forms en C# y actualmente estoy tratando de agregar imagen de avatar función de recorte. La imagen se pasa de una forma a otra sin ningún problema. Sin embargo, la imagen después de la cosecha es no volver a pasar a la forma de inicio de sesión, no importa lo que estoy haciendo. Yo estaba tratando de cambiar la imagen en el formulario de inicio de Sesión por sobrecarga de un constructor y la creación de un nuevo objeto en el recorte de la imagen. Recibo un error de sin embargo:
Sistema.ArgumentOutOfRangeException: "Parámetro debe ser positivo y < Altura. (Parámetro 'y')"
La Excepción se produce en el Color pxlColor' línea.
Los cultivos método en el que una imagen recortada se crea:
private void button_Crop_Image_Click(object sender, EventArgs e)
{
Cursor = Cursors.Default;
Bitmap bitmap2 = new Bitmap(pictureBox1.Width, pictureBox1.Height);
pictureBox1.DrawToBitmap(bitmap2, pictureBox1.ClientRectangle);
Bitmap croppedImage = new Bitmap(rectW, rectH);
for (int x = 0; x < rectW; x++)
{
for (int y = 0; y < rectH; y++)
{
Color pxlColor = bitmap2.GetPixel(cropX + x, cropY + y);
croppedImage.SetPixel(x, y, pxlColor);
}
}
pictureBox2.Image = (Image)croppedImage;
Login_Register_Form login = new Login_Register_Form(croppedImage);
pictureBox2.SizeMode = PictureBoxSizeMode.StretchImage;
}
La imagen se muestra correctamente en los pictureBox2.El campo de la imagen. Constructor de formulario de inicio de Sesión:
public Login_Register_Form(Bitmap croppedImage)
{
this.croppedPicture = (Image)croppedImage;
pictureBoxProfileImage.Image = this.croppedPicture;
}
Ya he hecho algunas investigaciones en la materia y se encontró que el error mencionado anteriormente, podría ser debido a los diferentes tamaños de campos de Imagen. Después de realizar su tamaño igual, un NullObjectReference ocurrió en 'pictureBoxProfileImage.Imagen = este.croppedPicture;' línea.
Sistema.NullReferenceException: "referencia a Objeto no establecida como instancia de un objeto".
He intentado pasar de mapa de bits y variables de Imagen, el resultado es similar en ambas situaciones. Cualquier ayuda sería appraciated.
Saludos, Filip