internal virtual void UpdateVisualState(bool useTransitions)
{
// Handle the Expansion states
if (IsExpanded)
{
VisualStates.GoToState(this, useTransitions, VisualStates.StateExpanded);
}
else
{
VisualStates.GoToState(this, useTransitions, VisualStates.StateCollapsed);
}
// Handle the HasItems states
if (HasItems)
{
VisualStates.GoToState(this, useTransitions, VisualStates.StateHasItems);
}
else
{
VisualStates.GoToState(this, useTransitions, VisualStates.StateNoItems);
}
// Handle the Selected states
if (IsSelected)
{
if (IsSelectionActive)
{
VisualStates.GoToState(this, useTransitions, VisualStates.StateSelected);
}
else
{
VisualStates.GoToState(this, useTransitions, VisualStates.StateSelectedInactive, VisualStates.StateSelected);
}
}
else
{
VisualStates.GoToState(this, useTransitions, VisualStates.StateUnselected);
}
// Handle the Common and Focused states
Interaction.UpdateVisualStateBase(useTransitions);
}