실버라이트 시작하기
우선 Visual Studio 2008 Beta 2 와 실버라이트 개발 툴을 설치를 하자.
훈스 닷넷 실버라이트 강좌 ( 실버라이트 개발 환경 설정하기 )
http://www.hoonsbara.com/hoonsboard.aspx?table_name=sivlerlighttip&board_idx=452919&page=1&keyword=&search=&boardmode=2
2009-06-20 아래의 경로는 접속할 수 없습니다
실버라이트 그림판 예제
http://umc.pe.kr/Sample/Silverlight/Silverlight-Picture/SilverlightPicture.html
2009-06-20 아래의 경로는 접속할 수 없습니다
새 프로젝트를 통해 Silverlight 프로젝트를 만들자.
새 프로젝트를 통해 Silverlight Project 만들기 |
실버라이트 프로젝트를 만들게 되면, 기본적으로 개발에 필요한 xaml 과 html, js 파일들이 만들어 진다.
그럼 Page_Loaded 에 다음과 같이 이벤트를 등록하는 코드를 작성해 보자.
public void Page_Loaded(object o, EventArgs e)
{
InitializeComponent();
this.MouseLeftButtonDown += new MouseEventHandler(Page_MouseLeftButtonDown);
this.MouseLeftButtonUp += new MouseEventHandler(Page_MouseLeftButtonUp);
this.MouseMove += new MouseEventHandler(Page_MouseMove);
} |
실버라이트는 마우스 오픈쪽 버튼에 대한 이벤트가 제공되지 않는다.
웹에 표시된 후, 실버라이트 영역에서 마우스 오른쪽 버튼을 누르면 기본적으로
Silverlight Configuration 컨텍스트 메뉴가 뜨기 때문에, 제공되지 않는 듯 하다.
그럼 코드에서 등록한 이벤트 메서드를 보자.
private bool isDrawing = false;
private Point lastPoint = new Point();
void Page_MouseMove(object sender, MouseEventArgs e)
{
if (!isDrawing) return;
Line line = new Line();
line.X1 = lastPoint.X;
line.Y1 = lastPoint.Y;
line.X2 = e.GetPosition(null).X;
line.Y2 = e.GetPosition(null).Y;
line.Stroke = new SolidColorBrush(Color.FromRgb(0, 0, 0));
line.StrokeThickness = 2;
Canvas canvas = ((Canvas)sender);
canvas.Children.Add(line);
lastPoint.X = e.GetPosition(null).X;
lastPoint.Y = e.GetPosition(null).Y;
}
void Page_MouseLeftButtonUp(object sender, MouseEventArgs e)
{
isDrawing = false;
}
void Page_MouseLeftButtonDown(object sender, MouseEventArgs e)
{
isDrawing = true;
lastPoint.X = e.GetPosition(null).X;
lastPoint.Y = e.GetPosition(null).Y;
} |
그럼 위 소스를 실행해 보자.
소스코드 실행 |
과연 실버라이트?
위처럼 굉장히 짧은 코드로 자바스크립트로 표현하기 힘든 부분을 무척 간단하게 작성할 수 있다.
아마 최근 가장 이슈가 되고 있는 실버라이트… 과연, 실무에서도?
MS 엔 실버라이트가 있지만, 이미 광범위하게 Adobe 의 Flex 가 자리잡고 있다.
하지만, 그것이 문제는 아니다. Flex 진영에선 Flex 전문 디자이너 및 개발자가 있지만,
실버라이트는 개발, 디자인을 모두 개발자가 한다?
.NET 을 개발하고 있는 개발자에겐 무척이나 매력적인 기술이겠지만, 디자이너에겐
실버라이트와 Blend 툴이 밥줄이 될 수 있을까 하는 걱정이다.
Xaml 과 같은 마크업 랭귀지의 등장이 디자이너와 개발자의 업무를 분리시키는 동시에
협업에 파격적인 변화를 줄거라고 생각하지만,
위의 디자이너 영역을 개발자가 왠지 떠맡게 될 것 같은 느낌이 드는건 나만 그럴까?
우리나라와 같은 기형적인 IT 환경에선 충분히 가능한 업무구조가 될 것 같다.
아무튼, 가장 주목받고 있는 기술인 만큼 그 릴리즈를 무척 기대해보며 이만 마친다.
'.NET > WPF/Silverlight' 카테고리의 다른 글
Silverlight 2.0 Release (0) | 2007.11.30 |
---|---|
Rick Barraza Silverlight Demo (0) | 2007.11.28 |
RIA 프레임웍 애니매이션 테스트 & 실버라이트 3D 테스트 (0) | 2007.11.05 |
SilverLight's powerpoint-alike demo released! (0) | 2007.10.19 |
Silverlight Reflector Addin 과 Disassembly Protected (0) | 2007.09.28 |
실버라이트 시작하기 (0) | 2007.08.27 |