2011-05-11 4 views
2

'background'속성을 사용하여 이미지를 설정하는 대신 패널의 Graphics 클래스를 사용하여 이미지를 그려 보겠습니다. C# .Net에서 어떻게 할 수 있습니까?그래픽 패널의 C#

+0

사용중인 플랫폼은 무엇입니까? WinForms? WPF? 실버 라이트? – Gabe

+0

배경 속성에 이미지를 할당하는 대신 수동으로 패널에 페인트하고 싶습니까? 왜 바퀴를 다시 발명하려고합니까? 백그라운드 속성을 사용하여 런타임에 이미지를 설정하고 지울 수 있습니다. 나는 이익을 보지 못한다고 생각합니다. 추론을 조금 더 설명 할 수 있습니까? – IAmTimCorey

답변

1

당신이 코드의 조각 다음 시도 할 수 있습니다.

public class ImagePanel:Panel 
{ 
    private Image image; 

    public Image Image 
    { 
     get { return image; } 
     set 
     { 

      image = value; 
      Refresh(); 
     } 
    } 

    protected override void OnPaint(PaintEventArgs e) 
    { 
     if(Image!=null) 
     { 
      e.Graphics.DrawImage(this.Image,Point.Empty); 
     } 
     base.OnPaint(e); 
    } 
}