Как проверить состояния VisualStateManager? - PullRequest
4 голосов
/ 15 декабря 2011

Как проверить текущее состояние элемента управления? VisualStateManager позволяет мне установить его из самого элемента управления, но я не вижу способа прочитать его обратно?

1 Ответ

4 голосов
/ 15 декабря 2011

Если у вас есть одна группа или вы хотите найти состояние в определенной группе, вы можете сделать что-то вроде:

    <VisualStateManager.VisualStateGroups>
        <VisualStateGroup x:Name="Group1">
            <VisualState x:Name="State1">
                <Storyboard>

                </Storyboard>
            </VisualState>
            <VisualState x:Name="State2">
                <Storyboard>

                </Storyboard>
            </VisualState>
        </VisualStateGroup>
    </VisualStateManager.VisualStateGroups>

и в своем коде вы можете сделать что-то вроде:

var state = Group1.CurrentState;
Console.WriteLine(state.Name);
...