internal void RemoveEmptyCollectionValues()
        {
            try
            {
                var RemoveIndexs = new List <int>();

                for (int i = 0; i < WebRequestItems.Count; i++)
                {
                    WebRequestParamsItem WebRequestItem = WebRequestItems[i];

                    if (WebRequestItem != null && WebRequestItem.Key != null && WebRequestItem.Value != null)
                    {
                        if (WebRequestItem.Key.Trim() == string.Empty && WebRequestItem.Value.Trim() == string.Empty)
                        {
                            RemoveIndexs.Add(i);
                        }
                    }
                    else
                    {
                        RemoveIndexs.Add(i);
                    }
                }

                foreach (var ItemIndex in RemoveIndexs)
                {
                    WebRequestItems.RemoveAt(ItemIndex);
                }
            } catch { }
        }
        internal void UpdateDataGrid_OnTextBox()
        {
            ObservableCollection <WebRequestParamsItem> Collection =
                GetLinkRequestToCollection.GetCollection(EditorRequestData.RequestLink);

            if (Collection != null)
            {
                WebRequestParamsItem[] CollectionArray;

                CollectionArray = WebRequestItems.ToArray();
                foreach (var WebRequestItem in Collection)
                {
                    if (WebRequestItem != null && WebRequestItem.Key != null)
                    {
                        WebRequestParamsItem GWebRequestItem = Array.Find(CollectionArray, x => x.Key == WebRequestItem.Key);

                        if (GWebRequestItem == null)
                        {
                            WebRequestItems.Add(WebRequestItem);
                        }
                        else
                        {
                            GWebRequestItem.Key   = WebRequestItem.Key;
                            GWebRequestItem.Value = WebRequestItem.Value;

                            DataGrid_FormRequestData.Items.Refresh();
                        }
                    }
                }

                CollectionArray = Collection.ToArray();
                var RemoveIndexs = new List <int>();
                for (int i = 0; i < WebRequestItems.Count; i++)
                {
                    WebRequestParamsItem RequestParamsItem = WebRequestItems[i];
                    if (RequestParamsItem != null && RequestParamsItem.Key != null)
                    {
                        if (!Array.Exists(CollectionArray, x => x.Key == RequestParamsItem.Key))
                        {
                            WebRequestItems.RemoveAt(i);
                            GeneralLogic.DataGrid_RemoveParamsById(RequestParamsItem.Id);
                        }
                    }
                }

                GeneralLogic.DataGrid_UpdateParamsBroadcast();
            }
            else
            {
                WebRequestItems.Clear();

                if (RequestDirectory != null)
                {
                    GeneralLogic.DataGrid_RemoveParamsAll(RequestDirectory.WebRequestId);
                }
            }
        }
        private void ButtonClick_DeleteParamsItem(object sender, RoutedEventArgs e)
        {
            var RequestParamsItem = (sender as Button).DataContext as WebRequestParamsItem;

            if (RequestParamsItem != null)
            {
                var MFormRequest = WebRequestItems.FirstOrDefault(r => r.Id == RequestParamsItem.Id);
                //WebRequestItems.Remove(MFormRequest);

                if (MFormRequest.Id != 0)
                {
                    GeneralLogic.DataGrid_RemoveParamsById(MFormRequest.Id);
                }
            }
        }
        public void SetHistory(WebRequestHistory HistoryItem)
        {
            CustomTimer.Create(delegate(object sender, EventArgs e)
            {
                GeneralLogic.IsCopy = true;

                EditorRequestData.RequestLink      = HistoryItem.Link;
                ComboBox_RequestType.SelectedIndex = ComboBox_RequestType.Items.IndexOf(HistoryItem.Method);

                GeneralLogic.SetViews(HistoryItem.ResponseResult);

                var RequestParams = JsonConvert.DeserializeObject <WebRequestParamsItem[]>(HistoryItem.ParametrsInJson);

                Debug.Log("RequestParams - " + RequestParams.Length);

                foreach (var ItemParam in RequestParams)
                {
                    WebRequestItems.Add(ItemParam);
                }
            }, new TimeSpan(0, 0, 0, 0, 300));
        }
 private void Button_SendRequest_Click(object sender, RoutedEventArgs e)
 {
     if (RequestDirectory == null)
     {
         new ConfirmWindow("Предупреждение", "Если вы хотите сохранить всю историю для запроса, вам следует сохранить запрос. " +
                           "Создать новый запрос?",
                           delegate()
         {
             LEditorNetwork.SaveRequest(
                 GeneralLogic.RequestLink,
                 GeneralLogic.RequestMethod,
                 WebRequestItems.ToArray()
                 );
         },
                           delegate()
         {
             GeneralLogic.WebRequestSend();
         });
     }
     else
     {
         GeneralLogic.WebRequestSend();
     }
 }
        private void Button_SaveRequest_Click(object sender, RoutedEventArgs e)
        {
            // Удаление пустых строк
            RemoveEmptyCollectionValues();

            LEditorNetwork.SaveRequest(GeneralLogic.RequestLink, GeneralLogic.RequestMethod, WebRequestItems.ToArray());
        }