컨트롤에 대해 다른 시각적 상태 정의

UserControl 컨트롤, Window 컨트롤, Page 컨트롤 또는 컨트롤 템플릿의 가능한 각 시각적 상태에 대해 서로 다른 표시 모양을 정의한 다음 사용자 상호 작용을 기준으로 해당 상태 간을 전환하는 동작이나 코드를 추가하면 응용 프로그램에서 대화형 작업을 만들 수 있습니다. 두 상태 조합 간의 전환을 수정할 수 있으며, 특정 상태가 처음으로 적용될 때 실행되는 애니메이션을 만들 수도 있습니다.

상태 그룹

상태 그룹에는 동일한 논리적 범주에 속하며 동시에 표시될 수 없는 시각적 상태가 포함됩니다. 단일 상태 그룹의 상태는 한 번에 하나씩만 표시될 수 있지만, 서로 다른 상태 그룹의 각 상태는 동시에 표시될 수 있습니다.

예를 들어 게임 카드를 나타내는 UserControl 컨트롤을 사용 중인 경우에는 카드 윗면(FaceUp) 및 아랫면(FaceDown)을 표시하는 상태가 포함된 SideDisplayed라는 상태 그룹이 있을 수 있습니다. 또한 포인터가 카드 위에 있을 때(MouseOver)와 카드를 클릭할 때(Click) 카드 모양을 변경하는 상태가 포함된 MouseInteraction이라는 상태 그룹도 있을 수 있습니다. 카드 앞면을 표시하면서 동시에 포인터를 해당 카드로 가져갈 수 있으므로, 이들 상태는 서로 다른 상태 그룹에 속합니다. 그러나 카드 앞면과 뒷면을 동시에 표시할 수는 없으므로 이 두 상태는 같은 상태 그룹에 속합니다.

게임 카드의 상태 그룹 및 상태

Ee371169.4fecf399-1962-4668-86e7-efe1a485cbc1(KO-KR,Expression.30).png

자세한 내용은 사용자 정의 컨트롤의 다양한 시각적 상태 및 전환 시간 정의를 참조하십시오.

상태

상태를 선택하면 상태 기록이 켜지고 해당 상태에 적용하는 모든 변경 내용이 기록됩니다. 상태 기록을 끄려면 기록 단추 Ee371169.0dcc6415-6d4e-4fcf-a9a3-eb4664cb6cbc(KO-KR,Expression.30).png를 클릭하거나 상태 패널에서 Base를 선택합니다. 특정 상태 그룹의 상태 모양을 변경하면서 다른 상태 그룹의 상태에 포함된 컨트롤을 보려면, 첫 번째 상태의 기록 모드에서 두 번째 상태의 미리 보기를 고정하면 됩니다.

자세한 내용은 사용자 정의 컨트롤의 다양한 시각적 상태 및 전환 시간 정의를 참조하십시오.

상태 간을 변경하려면 GoToStateAction 동작을 사용하거나 이벤트 처리기에서 코드를 작성하면 됩니다.

자세한 내용은 사용자 상호 작용에 대한 응답의 상태 변경을 참조하십시오.

전환

상태가 변경될 때 상태 간에 전환되는 데 걸리는 시간을 연장할 수 있습니다. 전환 기간은 전체 상태 그룹에 대해 설정할 수도 있고 특정 상태 조합 간의 전환에 대해 설정할 수도 있습니다.

상태 그룹의 모든 상태에 대해 전환 기간 설정

Ee371169.d1eabf30-62d2-47ae-a52b-453c702b9358(KO-KR,Expression.30).png

Click 상태에서 다른 모든 상태로의 전환에 대해서만 전환 기간 설정

Ee371169.1ed8d611-1ce5-4101-ad73-54aa166c4e9a(KO-KR,Expression.30).png

자세한 내용은 상태 변경 간 전환 시간 수정사용자 정의 컨트롤의 다양한 시각적 상태 및 전환 시간 정의를 참조하십시오.

열 또는 행 번호처럼 고유한 숫자이거나 너비 및 높이처럼 자동으로 설정되는 레이아웃 속성을 수정하는 상태 간의 부드러운 전환을 만들려면 유체 레이아웃을 사용할 수 있습니다.

자세한 내용은 레이아웃 변경 간 매끄러운 전환을 참조하십시오.

특정 상태의 애니메이션

특정 상태의 컨트롤 전환 후 재생될 애니메이션을 해당 상태에 추가할 수 있습니다.

자세한 내용은 상태 변경 후 재생될 애니메이션 추가를 참조하십시오.

참조

작업

시스템 컨트롤의 스타일 지정을 위한 다시 사용 가능한 템플릿 만들기

개념

새로운 사용자 컨트롤 디자인

공통 Silverlight 컨트롤의 스타일 지정 팁

개체에 동작 추가