private void ResyncStateDictionary()
{
MetaElementStateDict newStateDict = new MetaElementStateDict();
// Transfer existing state to new dictionary and create new state for new elements
foreach (UIElement element in Children)
{
if (_stateDict.ContainsKey(element))
newStateDict.Add(element, _stateDict[element]);
else
newStateDict.Add(element, new MetaElementState(element));
}
// Any removed elements will not have state in new dictionary
_stateDict = newStateDict;
}