2012-09-30 2 views
1

내 실수는 무엇인지 모르겠지만 이전에 작동한다고 말하고 있습니다. 그림 상자를 사용자의 선택에 따라 변경하고 싶습니다.C#의 그림 상자에서 그림 바꾸기

내가 넣은 첫 번째 그림은 그림 컨트롤 상자에 있습니다. 나는 코드를 쓰지 않고 사진을 찍었습니다. 그런 다음 시스템이 사용자가 선택한 값을 수신하면 그림이 두 번째 이미지로 변경됩니다.

코드 :이 전에

if (fheadValue == 101) 
{        
    Bitmap abc = (Bitmap)System.Drawing.Bitmap.FromFile 
     ("C:\\Users\\HDAdmin\\Pictures\\humanbody\\MALE123\\images\\malebothandroid_01"); 
    pictureBox1.Image = abc; 
} 

, 난은이 코드를 사용하며 두 번째 사진으로 변경 않습니다. 하지만 지금은 작동하지 않습니다. 내 코드가 무엇이 잘못되었는지 알지 못합니다.

다음이 코드를 사용해 보았습니다.

pictureBox1.Image = Image.FromFile("C:\\Users\\HDAdmin\\Pictures\\humanbody\\MALE123\\images\\malebothandroid_01"); 

하지만 여전히 작동하지 않습니다. 얘들 아, 제발 도와 줘. 그것은 이전 프로젝트에서 작동하지만 새로운 프로젝트에 같은 방법을 적용 할 때 작동하지 않습니다. 내가 그것을 알아 채지 않고 만든 부주의 한 실수가 있습니까? ??

+2

사진 경로가 파일 확장자가 아니어야합니까? 경로에 .jpg 또는 .png를 추가하십시오. so something like ... images \\ malebothandroid_01.jpg – Thousand

답변

3

방금 ​​알아 봤지만 이미지의 파일 확장명을 설정하지 않았습니다. 확장을 추가해야합니다. 이 있는지 여부 BMP, PNG, JPG ..

편집 :은 또한()

Edit2가 pictureBox1.Invalidate 전화 : 무효화를 호출 할 필요가 없습니다 코멘트에 관해서는().

+0

당신은'Invalidate'를 호출 할 필요가 없으므로 문제의 원인이되는 이미지 확장이 될 가능성이 큽니다. – ChrisF

+0

여러분 께 감사드립니다. 그런 어리석은 질문을하는 것은 유감 스럽다. 시간을 내서 미안해. –

+0

@ChrisF 하이라이트를 주셔서 감사합니다. Invalidate 함수를 호출하는 것이 왜 필요하지 않은지 설명 할 수 있습니까? 필자가 picturebox를 다시 그릴 필요가있을 때마다이 메서드를 호출해야한다는 것을 알았습니다. – idish