private void RefreshCornerControl() { if (ViewModelNode == null) { return; } var count = 0; if (ViewModelNode.VideoInfo != null && ViewModelNode.VideoInfo.HasVideo) { VideoRemoteControl.Visibility = Visibility.Visible; count++; } if (ViewModelNode.DescriptionType != NodeDescriptionType.None) { if (count == 0) { CornerButton.Visibility = Visibility.Visible; var buttonViewModel = new NodeCornerButtonViewModel { ButtonType = NodeCornerButtonType.Content }; NodeCornerButtonLoader.DressButton(buttonViewModel); CornerButton.DataContext = buttonViewModel; } count++; } else { NodeCornerButtonViewModel buttonViewModel = CornerButton.DataContext as NodeCornerButtonViewModel; if (buttonViewModel != null && buttonViewModel.ButtonType == NodeCornerButtonType.Content && CornerButton.Visibility == Visibility.Visible) { CornerButton.Visibility = Visibility.Collapsed; } } if (ViewModelNode.IsTranscluded) { if (count == 0) { CornerButton.Visibility = Visibility.Visible; var viewmodel = new NodeCornerButtonViewModel { ButtonType = NodeCornerButtonType.Map }; NodeCornerButtonLoader.DressButton(viewmodel); CornerButton.DataContext = viewmodel; } count++; } if (count > 1) { MultiButtonIndicator.Visibility = Visibility.Visible; } else { MultiButtonIndicator.Visibility = Visibility.Collapsed; } }