Lucrez la contact manager desktop aplicație în C# Windows forms și eu sunt în prezent încearcă să adăugați avatar decuparea imaginii caracteristică. Imaginea este trecut de la o formă la alta fără probleme. Cu toate acestea, imaginea după recoltare nu este trecut înapoi la formularul de logare, indiferent de ceea ce fac. Am fost încercarea de a schimba imaginea în formă de Autentificare prin supraîncărcarea un constructor și crearea unui nou obiect la decuparea imaginii. Am primi un astfel de eroare cu toate acestea:
Sistem.ArgumentOutOfRangeException: "Parametru trebuie să fie pozitiv și < Înălțime. (Parametru "y")"
Excepția apare pe Culoare pxlColor' linie.
Cultură metodă în cazul în care o imagine decupată este creat:
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;
}
Imaginea este afișată corect pe pictureBox2.Câmpul de imagine. Constructor de formular de Autentificare:
public Login_Register_Form(Bitmap croppedImage)
{
this.croppedPicture = (Image)croppedImage;
pictureBoxProfileImage.Image = this.croppedPicture;
}
Deja am făcut niște cercetări în această problemă și am aflat că eroarea menționată mai sus ar putea fi cauza pentru diferite dimensiuni de Imagine domenii. După efectuarea lor, de dimensiuni egale, o NullObjectReference a avut loc pe 'pictureBoxProfileImage.Imagine = acest lucru.croppedPicture;' linie.
Sistem.NullReferenceException: "Obiectul de referință nu setat la o instanță a unui obiect."
Am încercat trece atât Bitmap și Imagini variabile, rezultatul este similar în ambele situații. Orice ajutor ar fi appraciated.
Noroc, Filip