출처 : http://www.microsoft.com/showcase/en/US/details/58757441-f910-425d-b1eb-da09faf4628c#
'.NET Framework > .NET Framework 4.0' 카테고리의 다른 글
| 윈도우7(WPF4)에서 멀티터치 구현하기 (0) | 2010/07/15 |
|---|
| 윈도우7(WPF4)에서 멀티터치 구현하기 (0) | 2010/07/15 |
|---|
| 시간과 색상 데이터 생성, TimeSpan & Color (0) | 2009/05/12 |
|---|---|
| 코드로 만드는 애니메이션 (0) | 2009/05/12 |
| Timer 클래스 구현 (0) | 2009/05/12 |
| 마우스 Drag & Drop(드래그 엔 드롭)의 구현 (0) | 2009/05/12 |
Create a DoubleAnimation
Create a Storyboard
Begin the Storyboard in response to an even
| 시간과 색상 데이터 생성, TimeSpan & Color (0) | 2009/05/12 |
|---|---|
| 코드로 만드는 애니메이션 (0) | 2009/05/12 |
| Timer 클래스 구현 (0) | 2009/05/12 |
| 마우스 Drag & Drop(드래그 엔 드롭)의 구현 (0) | 2009/05/12 |
MSDN 실버라이트3 레퍼런스 중 : http://msdn.microsoft.com/en-us/library/cc189084(VS.95).aspx
<Grid x:Name="LayoutRoot" Background="White">
<!-- Just a TextBlock to show the output of the timer. -->
<TextBlock Loaded="StartTimer" x:Name="myTextBlock" />
</Grid>
public void StartTimer(object o, RoutedEventArgs sender)
{
System.Windows.Threading.DispatcherTimer myDispatcherTimer = new System.Windows.Threading.DispatcherTimer();
myDispatcherTimer.Interval = new TimeSpan(0, 0, 0, 0, 100); // 100 Milliseconds
myDispatcherTimer.Tick += new EventHandler(Each_Tick);
myDispatcherTimer.Start();
}
// A variable to count with.
int i = 0;
// Raised every 100 miliseconds while the DispatcherTimer is active.
public void Each_Tick(object o, EventArgs sender)
{
myTextBlock.Text = "Count up: " + i++.ToString();
}
| 시간과 색상 데이터 생성, TimeSpan & Color (0) | 2009/05/12 |
|---|---|
| 코드로 만드는 애니메이션 (0) | 2009/05/12 |
| Timer 클래스 구현 (0) | 2009/05/12 |
| 마우스 Drag & Drop(드래그 엔 드롭)의 구현 (0) | 2009/05/12 |
MSDN Drag & Drop 샘플 : http://msdn.microsoft.com/en-us/library/cc189066(VS.96).aspx HitTest를 이용해서 오브젝트 추적 : http://nickssoftwareblog.com/2008/10/07/silverlight-20-in-examples-part-drag-and-drop-inside-out/public partial class Page : UserControl { bool isDragging = false; Point offset; // ... }void theDragon_MouseLeftButtonDown(object sender,
MouseButtonEventArgs e)
{
// Mark that we're doing a drag
isDragging = true;
// Ensure that the mouse can't leave the dragon
theDragon.CaptureMouse();
// Determine where the mouse 'grabbed'
// to use during MouseMove
offset = e.GetPosition(theDragon);
}
void theDragon_MouseMove(object sender, MouseEventArgs e)
{
if (isDragging)
{
// Where is the mouse now?
Point newPosition = e.GetPosition(LayoutRoot);
info.Text = string.Concat("Position: ",
newPosition.X,
" x ",
newPosition.Y);
// Move the dragon via the new position less the offset
theDragon.SetValue(Canvas.LeftProperty,
newPosition.X - offset.X);
theDragon.SetValue(Canvas.TopProperty,
newPosition.Y - offset.Y);
}
}
void theDragon_MouseLeftButtonUp(object sender, MouseButtonEventArgs e) { if (isDragging) { // Turn off Drag and Drop isDragging = false; // Free the Mouse theDragon.ReleaseMouseCapture(); } }
드래그엔드롭 매니저 : http://www.codeplex.com/silverlightdragdrop
| 시간과 색상 데이터 생성, TimeSpan & Color (0) | 2009/05/12 |
|---|---|
| 코드로 만드는 애니메이션 (0) | 2009/05/12 |
| Timer 클래스 구현 (0) | 2009/05/12 |
| 마우스 Drag & Drop(드래그 엔 드롭)의 구현 (0) | 2009/05/12 |
VisualStateManager.GoToState(FindName("myCoverStates"+i),"position"+position,true);
| 실버라이트 C#에서 eval이나 ["오브젝트 이름"] 같은 역할? (0) | 2009/05/12 |
|---|---|
| 아웃풋 창을 이용해서 디버깅 하기 : Debug와 Trace의 사용 (0) | 2009/02/09 |
| C# 함수에서 불특정 다수의 변수 받기, params 키워드 사용 (0) | 2009/01/07 |
| C#에서는 멤버변수를 필드(fields) 라고 부른다.(냉무) (0) | 2008/07/24 |
| Windows Forms Application 기초 샘플 (0) | 2008/07/22 |
| 디버그 시에 실행할 코드 처리 방법 (0) | 2008/07/12 |
| |||||||||||||||||||||||||||||||
1. 닷넷프레임워크 기술 용어들
A. CLI – Common Language Infrastructure
서로 다른 컴퓨터 플랫폼에서도 여러 가지 개발 언어를 사용할 수 있도록 하는 실행 가능한 코드와 런타임 환경을 기술한 공개된 표준 스펙입니다. 아래와 같이 구성이 되어 있어요.
i. CTS - Common Type System
CTS에 호환되는 프로그래밍 언어들 간에 공유할 수 있는 데이터 타입의 모음입니다. 크게 두 가지로 구성하는데 하나는 Value Type으로 직접적으로 값을 갖고, 또 다른 하나로 Reference Type으로 값이 위치한 주소를 가져요.
ii. CIL – Common Intermediate Language
iii. CLS - Common Language Specification
iv. VES – Virtual Execution System
B. CLR - Common Language Runtime : 개발자들이 특정 CPU 의 많은 디테일한 부분들을 신경 쓰지 않고도 프로그램을 작성하고 실행할 수 있도록 제공하는 실행 환경이에요.
C. DLR – Dynamic Language Runtime
D. 네이티브 코드(Native Code)
E. 매니지드 코드(Managed Code)
F. BCL - Base Class Library
G. FCL - Framework Class Library
CAS - Code Access Security
작성중....
| 닷넷프레임워크의 이해 (0) | 2009/04/09 |
|---|---|
| .NET Framework 관련 축약어 (1) | 2009/01/30 |
WinForm의 경우는 앞단에 cs파일이 있고, UI를 구성하는 디자이너 cs 파일이 있지만...
마크업은 계층 구조를 명확하게 보여주기 때문에 가독성이 좋고 직관적이며, 컴파일 방식이 아닌 파싱 방식이기 때문에 동적으로 변경이 가능하여 유연 구조를 가진다. 또한, XML 기반이기 때문에 개방적이고 처리하기가 쉽다.
개념적인 차이로는 WinForm이 개발자-디자이너의 작업 흐름에 맞추어져 있는 반면, WPF는 디자이너-개발자 작업 흐름에 따른다.
| WinForm과 WPF의 차이 (0) | 2009/02/09 |
|---|---|
| C#002. 더하기 계산기 만들기 (0) | 2009/02/09 |
| 탭브라우징에서 새로운 탭 추가하는 부분 (0) | 2008/09/04 |
| WebBrowser 오브젝트로 만든 초간단 웹브라우저 (0) | 2008/09/03 |
| TextBox를 클릭하였을 때 텍스트 모두 선택하기 (0) | 2008/09/03 |
| Window 대신에 NavigationWindow 클래스 사용하기 (0) | 2008/06/29 |
| WinForm과 WPF의 차이 (0) | 2009/02/09 |
|---|---|
| C#002. 더하기 계산기 만들기 (0) | 2009/02/09 |
| 탭브라우징에서 새로운 탭 추가하는 부분 (0) | 2008/09/04 |
| WebBrowser 오브젝트로 만든 초간단 웹브라우저 (0) | 2008/09/03 |
| TextBox를 클릭하였을 때 텍스트 모두 선택하기 (0) | 2008/09/03 |
| Window 대신에 NavigationWindow 클래스 사용하기 (0) | 2008/06/29 |
프로젝트 이름을 잘못 지으면 나중에 변경하기가 까다롭다.
프로젝트 이름을 변경하는 방법을 순서대로 적어본다.
1. 솔루션 익스플로러에서 solution을 오른 쪽 클릭하여 rename을 선택한 후 이름을 변경한다. 프로젝트 이름도 마찬가지로 방법으로 변경한다.
2. 솔루션 익스플로러에서 프로젝트를 선택한 상태에서 Propertie(왼쪽 상단) 아이콘을 클릭하여, Application 설정에서 asembly name과 default namespace를 변경한다.
3. C# 코드 상에서 namespace 뒤에 오는 이름을 오른 쪽 클릭하여 Refactor-Rename을 이용해서 코드 상의 이름도 변경한다.
4. 열려있는 솔루션을 우선 닫은 후에, 탐색기를 열어서 솔루션 폴더와 프로젝트 폴더의 이름을 각각 변경한다.
5. 다시 솔루션을 열고, 솔루션 익스플로러에서 프로젝트를 선택한 상태에서 하단의 Properties 창에서 경로를 새로운 이름으로 수정한다.
이렇게 하면 깔끔하게 변경할 수는 있는데, 더 쉬운 방법은 없을까...?
| 처음에 잘못 만든 프로젝트 이름 변경하기 (0) | 2009/02/09 |
|---|---|
| 한줄씩 실행하기 & 디버깅 단축키 (0) | 2008/07/24 |
| 변수의 타입을 쉽게 확인하는 법 (0) | 2008/07/22 |
| 클래스의 메소드 및 속성 목록 보기 (0) | 2008/07/12 |
| 함수 정의부 자동으로 만들기 (0) | 2008/07/11 |
| 주요 단축키 (0) | 2008/03/30 |