VisualStateManager.GoToState 메서드

2013-12-13

컨트롤을 두 상태 간에 전환합니다.

Namespace:  System.Windows
어셈블리:  System.Windows(System.Windows.dll)

public static bool GoToState(
	Control control,
	string stateName,
	bool useTransitions
)

매개 변수

control
형식: System.Windows.Controls.Control
상태 간에 전환할 컨트롤입니다.
stateName
형식: System.String
전환 후의 상태입니다.
useTransitions
형식: System.Boolean
VisualTransition을 사용하여 상태 간 전환을 수행하면 true이고, 그렇지 않으면 false입니다.

반환 값

형식: System.Boolean
컨트롤이 새 상태로 전환되었으면 true이고, 그렇지 않으면 false입니다.

예외조건
ArgumentNullException

controlnull인 경우

ArgumentNullException

stateNamenull인 경우

GoToStateCore 메서드는 전환에 연결된 스토리보드를 적절하게 시작 및 중지하는 데 필요한 논리를 수행합니다. 컨트롤이 해당 상태를 변경하기 위해 GoToState를 호출하면 VisualStateManager는 다음 작업을 수행합니다.

  • 먼저 컨트롤이 이동하려는 VisualStateStoryboard가 있으면 해당 Storyboard가 시작됩니다. 컨트롤이 현재 속해 있는 VisualStateStoryboard가 있으면 해당 스토리보드는 종료됩니다.

  • 컨트롤이 이미 stateName 상태에 있으면 GoToState는 아무런 동작도 취하지 않고 true를 반환합니다.

  • stateNamecontrolControlTemplate에 없으면 GoToState는 아무런 동작도 취하지 않고 false를 반환합니다.

다음 예제에서는 GoToStateCore 메서드를 사용하여 상태 간 변환을 수행하는 컨트롤을 보여 줍니다.


private void UpdateStates(bool useTransitions)
{
    if (Value >= 0)
    {
        VisualStateManager.GoToState(this, "Positive", useTransitions);
    }
    else
    {
        VisualStateManager.GoToState(this, "Negative", useTransitions);
    }

    if (isFocused)
    {
        VisualStateManager.GoToState(this, "Focused", useTransitions);
    }
    else
    {
        VisualStateManager.GoToState(this, "Unfocused", useTransitions);
    }

}


Windows Phone OS

지원되는 버전: 8.0, 7.1, 7.0

Windows Phone

표시:
© 2015 Microsoft