private void ButtonClick_OpenWebRequest(object sender, RoutedEventArgs e) { var RowRequestDirectory = (sender as Button).DataContext as ModelRequestDirectory; if (ProjectData.TabCollecton != null) { ModelRequestDirectory RequestDirectoryItem = Array.Find(VirtualRequestDirs.ToArray(), x => x.Id == RowRequestDirectory.Id); ProjectData.TabCollecton.Items.Add( BoundNewItem.AddTab( RequestDirectoryItem.RequestTitle, RequestDirectoryItem ) ); } }
private void NetworkActions() { /** * Загружает в VirtualRequestDirs список запросов и каталогов */ LEditorNetworkActions.FirstLoad_ListViewCollection(this); /** * Обновляет строку с ссылкой */ LEditorNetworkActions.LinkUpdate_Confirm(this); /** * Устанавливает новый метод в списке методов запроса */ LEditorNetworkActions.MethodUpdate_Confirm(this); /** * Обновляет список параметров запроса */ LEditorNetworkActions.RequestParamsUpdate_Confirm(this); LEditorNetworkActions.RequestParamsDelete_Confirm(this); LEditorNetworkActions.RequestParamsDeleteAll_Confirm(this); NetworkDelegates.Add(delegate(MResponse ServerResponse) { var MBinding = Package.Unpacking <MBinding_WebRequest>(ServerResponse.DataBytes); VirtualRequestDirs.Add(new ModelRequestDirectory { Id = MBinding.Directory.Id, RequestTitle = MBinding.Item.Title, Title = MBinding.Directory.Title, RequestMethod = MBinding.Item.Method, WebRequest = MBinding.Item.Link, WebRequestId = MBinding.Item.Id }); ListViewCollection.Refresh(); }, Dispatcher, -1, "WebRequestItem.MBinding_WebRequest.Add", GeneralLogic.UserControl_Uid, true); NetworkDelegates.Add(delegate(MResponse ServerResponse) { var RequestItem = Package.Unpacking <WebRequestItem>(ServerResponse.DataBytes); var DirItem = Array.Find(VirtualRequestDirs.ToArray(), x => x.WebRequestId == RequestItem.Id); Debug.Log("Удаление каталога: " + DirItem.RequestTitle); VirtualRequestDirs.Remove(DirItem); ListViewCollection.Refresh(); if (RequestDirectory != null && RequestDirectory.WebRequestId == RequestItem.Id) { Debug.Log("Удаление Tab вкладки"); ProjectData.TabCollecton.Items.Remove(TabItemView); } }, Dispatcher, -1, "WebRequestDir.Delete.Confirm", GeneralLogic.UserControl_Uid, true); NetworkDelegates.Add(delegate(MResponse ServerResponse) { if (RequestDirectory == null) { return; } var MRDir = Package.Unpacking <ModelRequestDirectory>(ServerResponse.DataBytes); for (int i = 0; i < VirtualRequestDirs.Count; i++) { if (VirtualRequestDirs[i].Id == MRDir.Id) { VirtualRequestDirs[i].Title = MRDir.Title; VirtualRequestDirs[i].RequestTitle = MRDir.RequestTitle; break; } } ListViewCollection.Refresh(); GeneralLogic.HeaderName = MRDir.RequestTitle; GeneralLogic.SetHeaderName(TabItemView); }, Dispatcher, -1, "WebRequestDir.RequestDirectory.Update.Confirm", GeneralLogic.UserControl_Uid, true); }