Beispiel #1
0
 public BackHistory(FormSearchDataModel formList, EventCallback <FormSearchDataModel> formListChanged)
 {
     /*
      * formList.Back_History.Add(formList.Deep_Copy());
      * if(formList.Back_History.Count == 10)
      * {
      *  formList.Back_History.RemoveRange(0, 5);
      * }
      * formListChanged.InvokeAsync(formList);
      */
 }
Beispiel #2
0
        /*
         * public void NextPage()
         * {
         *  if(History.Next_History.Count <= 0)
         *  {
         *      //何もしない
         *  }
         *  else if(History.Next_History.Count >= 1)
         *  {
         *      try
         *      {
         *          formSearchModel = History.Next_History[History.Next_History.Count - (History.Next_History.Count - 1) - 1];
         *      }
         *      catch(System.ArgumentOutOfRangeException e)
         *      {
         *          Console.WriteLine("予期せぬエラー -> MainLayout:001(配列不正)");
         *          History.Back_History.Clear();
         *          History.Next_History.Clear();
         *          formSearchModel.IndexURL = "Index";
         *
         *      }
         *  }
         *  else
         *  {
         *      Console.WriteLine("予期せぬエラー -> MainLayout:002(Back_Historyエラー)");
         *      History.Back_History.Clear();
         *      History.Next_History.Clear();
         *      formSearchModel.IndexURL = "Index";
         *
         *  }
         * }
         */
        public void BackPage()
        {
            Console.WriteLine("ButtonOn↓-----------------------------");
            if (History.Back_History.Count <= 1)
            {
                //何もしない
            }

            /*
             * else if((formSearchModel.IriActive == false || formSearchModel.TomeActive == false)&&
             *      formSearchModel.IndexURL == "IriTome" && formSearchModel.PhaseNo == 1)
             * {
             *  formSearchModel.IriActive = true;
             *  formSearchModel.TomeActive = true;
             *
             * }
             */
            else if (1 < History.Back_History.Count)
            {
                try
                {
                    //現在値、退避用
                    //FormSearchDataModel Temp_formSearchModel;
                    //Temp_formSearchModel = History.Back_History[History.Back_History.Count - 1]; //.Deep_Copy(); //今の値をTempにDコピー 進がなくなったため無効化

                    formSearchModel = null;
                    formSearchModel = History.Back_History[History.Back_History.Count - 2].Deep_Copy(); //ひとつ前の値をコピー
                    History.Back_History.RemoveAt(History.Back_History.Count - 1);

                    /*
                     * if (History.Back_History.Count >= 12) //削除処理
                     * {
                     *  Console.WriteLine("Dele");
                     *  History.Back_History.RemoveRange(0, 2 );
                     * } //ここまで
                     */

                    //History.Next_History.Add(Temp_formSearchModel.Deep_Copy()); 進がなくなったため無効化

                    //入止め固有処理
                    if (formSearchModel.IndexURL == "IriTome")
                    {
                        if (formSearchModel.ButtonState != true)
                        {
                            Console.WriteLine("肉");
                            formSearchModel.HistoryBackState = true;
                        }
                        else
                        {
                            //入り止めにてボタンが押された状態で戻るボタンを押されたとき
                            //次ページで”HistoryBackState”がTrueにならないようにする。
                            History.Back_History[History.Back_History.Count - 1].ButtonState = false;
                            formSearchModel.ButtonState = false;
                        }
                    }
                    else
                    {
                        formSearchModel.HistoryBackState = true;
                    }
                    StateHasChanged();
                }
                catch (System.ArgumentOutOfRangeException e) //Back_History-2の位置に値が入っていなかったとき
                {
                    Console.WriteLine("予期せぬエラー -> MainLayout:003(配列不正)");
                    History.Back_History.Clear();
                    History.Next_History.Clear();
                    formSearchModel.IndexURL = "Index";
                }
            }
            else
            {
                //BackHistoryに値が入っていない場合エラー
                Console.WriteLine("予期せぬエラー -> MainLayout:004(Back_Historyエラー)");
                History.Back_History.Clear();
                History.Next_History.Clear();
                formSearchModel.IndexURL = "Index";
            }
            Console.WriteLine("ButtonOn-----------------------------");
        }