private void cmsWebServiceClient_GetIssueRelatedActionsCompleted(object sender, GetIssueRelatedActionsCompletedEventArgs e) { mIssue.IssueRelatedActions = e.Result; CmsWebServiceClient cmsWebServiceClient = new CmsWebServiceClient(Utils.WcfBinding, Utils.WcfEndPoint); cmsWebServiceClient.GetIssueActionStatusesCompleted += (s2, e2) => { cmsWebServiceClient.GetIssueActionTypesCompleted += (s3, e3) => { mIssueActionStatuses = e2.Result; mIssueActionTypes = e3.Result; foreach (var action in e.Result) { mIssueRelatedActions.Add(new IssueRelatedActionWapperViewModel(action, View.IssuesPanel.IssueDistributionControl.ViewModel, mIssueActionStatuses, mIssueActionTypes)); } mIssue.ModifiedObjects.ActionsModified = true; mDictionary = Utils.BuildDictionaryForCollection(mIssue.IssueRelatedActions.Select(x => x.Id).ToList()); RaisePropertyChanged("IssueRelatedActions"); if (DataLoaded != null) { DataLoaded(); } }; cmsWebServiceClient.GetIssueActionTypesAsync(); }; cmsWebServiceClient.GetIssueActionStatusesAsync(); }
public static Task<List<IssueActionType>> GetIssueActionTypes() { var task = new TaskCompletionSource<List<IssueActionType>>(); var cee = new CmsWebServiceClient(Utils.WcfBinding, Utils.WcfEndPoint); cee.GetIssueActionTypesCompleted += (s, e) => task.SetResult(e.Result); cee.GetIssueActionTypesAsync(); return task.Task; }
private void LoadIssueActionTypes(NodeView expandedNode) { CmsWebServiceClient cmsWebServiceClient = new CmsWebServiceClient(Utils.WcfBinding, Utils.WcfEndPoint); EventHandler<GetIssueActionTypesCompletedEventArgs> fetchCompleted = null; fetchCompleted = (s, eventArgs) => { List<IssueActionType> actionTypes = eventArgs.Result; foreach (IssueActionType actionType in actionTypes) { NodeView child = new NodeView(expandedNode) { Id = actionType.Id, Name = actionType.Name, Description = actionType.Description, IsActive = actionType.IsActive, Icon = "/CmsEquipmentDatabase;component/Images/Configuration.png", Type = NodeType.IssueActionTypeNode, HasChildren = false, SortField = actionType.Ordinal.ToString(), }; expandedNode.Children.Add(child); cmsWebServiceClient.GetIssueActionTypesCompleted -= fetchCompleted; } expandedNode.Sort(); Utils.HideSpinner(expandedNode); }; cmsWebServiceClient.GetIssueActionTypesCompleted += fetchCompleted; cmsWebServiceClient.GetIssueActionTypesAsync(); }