private async void TransitionSelected(object sender, RoutedEventArgs e)
{
var selectedTransition = string.Empty;
try
{
var dialog = (BaseMetroDialog)this.Resources["TransitionSelector"];
var comboBox = dialog.FindChild<ComboBox>("Items");
selectedTransition = (string)comboBox.SelectedItem;
var jiraRef = DataModel.JiraReference;
await DialogCoordinator.Instance.HideMetroDialogAsync(modelHelpers.DialogContext, dialog);
await progressDialogHelper.Do(() => modelHelpers.Gallifrey.JiraConnection.TransitionIssue(jiraRef, selectedTransition), "Changing Status", false, true);
}
catch (StateChangedException)
{
if (string.IsNullOrWhiteSpace(selectedTransition))
{
await DialogCoordinator.Instance.ShowMessageAsync(modelHelpers.DialogContext, "Status Update Error", "Unable To Change The Status Of This Issue");
}
else
{
await DialogCoordinator.Instance.ShowMessageAsync(modelHelpers.DialogContext, "Status Update Error", $"Unable To Change The Status Of This Issue To {selectedTransition}");
}
}
modelHelpers.CloseFlyout(this);
modelHelpers.RefreshModel();
}