New file |
| | |
| | | using System;
|
| | | using System.Collections.Generic;
|
| | | using System.Text;
|
| | |
|
| | | namespace Shared.Phone.UserCenter.HideOption
|
| | | {
|
| | | /// <summary>
|
| | | /// 查看全部文件
|
| | | /// </summary>
|
| | | public class HideOptionSearchAllFile : EditorCommonForm
|
| | | {
|
| | | #region ■ 变量声明___________________________
|
| | |
|
| | | /// <summary>
|
| | | /// 解密
|
| | | /// </summary>
|
| | | private bool decryptPassword = false;
|
| | | private string nowDirectory = string.Empty;
|
| | | #endregion
|
| | |
|
| | | #region ■ 初始化_____________________________
|
| | |
|
| | | /// <summary>
|
| | | /// 画面显示(底层会固定调用此方法,借以完成画面创建)
|
| | | /// </summary>
|
| | | public void ShowForm(string directory)
|
| | | {
|
| | | this.nowDirectory = directory;
|
| | | //设置头部信息
|
| | | base.SetTitleText("文件列表");
|
| | |
|
| | | var btnButton = new NormalViewControl(200, 69, true);
|
| | | btnButton.Gravity = Gravity.CenterVertical;
|
| | | btnButton.X = bodyFrameLayout.Width - Application.GetRealWidth(200) - ControlCommonResourse.XXLeft;
|
| | | btnButton.TextColor = UserCenterColor.Current.TopLayoutTitleText;
|
| | | btnButton.TextAlignment = TextAlignment.BottomRight;
|
| | | btnButton.TextSize = 17;
|
| | | btnButton.Text = "翻译";
|
| | | topFrameLayout.AddChidren(btnButton);
|
| | | btnButton.ButtonClickEvent += (sender, e) =>
|
| | | {
|
| | | if (this.decryptPassword == false)
|
| | | {
|
| | | this.decryptPassword = true;
|
| | | //初始化中部信息
|
| | | this.InitMiddleFrame(nowDirectory);
|
| | | }
|
| | | };
|
| | |
|
| | | //初始化中部信息
|
| | | this.InitMiddleFrame(nowDirectory);
|
| | |
|
| | | this.BackButtonClickEvent = (btnContr) =>
|
| | | {
|
| | | string rootPath = Shared.IO.FileUtils.RootPath.Trim('/');
|
| | | if (this.nowDirectory.Trim('/') == rootPath)
|
| | | {
|
| | | this.CloseForm();
|
| | | return;
|
| | | }
|
| | | string[] Arry = this.nowDirectory.Split(new string[] { "/" }, StringSplitOptions.RemoveEmptyEntries);
|
| | | string nextDir = string.Empty;
|
| | | for (int i = 0; i < Arry.Length - 1; i++)
|
| | | {
|
| | | nextDir += Arry[i] + "/";
|
| | | }
|
| | | //初始化中部信息
|
| | | this.InitMiddleFrame(nextDir);
|
| | | };
|
| | | }
|
| | |
|
| | | /// <summary>
|
| | | /// 初始化中部信息
|
| | | /// </summary>
|
| | | private void InitMiddleFrame(string directory)
|
| | | {
|
| | | this.nowDirectory = directory;
|
| | | this.ClearBodyFrame();
|
| | |
|
| | | var listDirectory = new List<string>();
|
| | | var listAllFile = new List<string>();
|
| | |
|
| | | //string rootPath = Shared.IO.FileUtils.RootPath.Trim('/');
|
| | | //if (this.nowDirectory.Trim('/') == rootPath)
|
| | | //{
|
| | | // //根目录只要两个就可以了
|
| | | // listDirectory.Add(Common.Config.Instance.Guid);
|
| | | // listDirectory.Add(Application.Skin != null ? Application.Skin : "Phone");
|
| | | //}
|
| | | //else
|
| | | {
|
| | | var files = System.IO.Directory.GetDirectories(directory);
|
| | | foreach (var file in files)
|
| | | {
|
| | | string[] arry = file.Split(new string[] { "/" }, StringSplitOptions.RemoveEmptyEntries);
|
| | | listDirectory.Add(arry[arry.Length - 1]);
|
| | | }
|
| | | listDirectory.Sort();
|
| | |
|
| | | listAllFile = HdlFileLogic.Current.GetFileFromDirectory(directory.TrimEnd('/'));
|
| | | listAllFile.Sort();
|
| | | }
|
| | |
|
| | | var listView = new VerticalListControl(23);
|
| | | listView.BackgroundColor = UserCenterColor.Current.White;
|
| | | listView.Height = bodyFrameLayout.Height;
|
| | | bodyFrameLayout.AddChidren(listView);
|
| | |
|
| | | if (listDirectory.Count > 0)
|
| | | {
|
| | | var row1 = new RowLayoutControl(listView.rowSpace / 2);
|
| | | listView.AddChidren(row1);
|
| | | row1.frameTable.UseClickStatu = false;
|
| | | row1.frameTable.AddLeftCaption("【文件夹列表】", 800);
|
| | |
|
| | | for (int i = 0; i < listDirectory.Count; i++)
|
| | | {
|
| | | this.AddDirectoryRowControl(listView, listDirectory[i], directory, i != listDirectory.Count - 1);
|
| | | }
|
| | | }
|
| | |
|
| | | if (listAllFile.Count > 0)
|
| | | {
|
| | | var row1 = new RowLayoutControl(listView.rowSpace / 2);
|
| | | listView.AddChidren(row1);
|
| | | row1.frameTable.UseClickStatu = false;
|
| | | row1.frameTable.AddLeftCaption("【文件列表】", 800);
|
| | | for (int i = 0; i < listAllFile.Count; i++)
|
| | | {
|
| | | this.AddFileRowControl(listView, listAllFile[i], directory, i != listAllFile.Count - 1);
|
| | | }
|
| | | }
|
| | | listView.AdjustRealHeightByBottomButton(Application.GetRealHeight(50));
|
| | |
|
| | | var btnButon = new BottomClickButton();
|
| | | btnButon.Text = "删除文件夹";
|
| | | bodyFrameLayout.AddChidren(btnButon);
|
| | | btnButon.ButtonClickEvent += (sender, e) =>
|
| | | {
|
| | | this.ShowMassage(ShowMsgType.Confirm, "是否清除该文件夹", () =>
|
| | | {
|
| | | try
|
| | | {
|
| | | System.IO.Directory.Delete(directory, true);
|
| | | this.CloseForm();
|
| | | }
|
| | | catch (Exception ex)
|
| | | {
|
| | | this.ShowMassage(ShowMsgType.Error, "清除缓存文件夹异常");
|
| | | HdlLogLogic.Current.WriteLog(ex, "清除缓存文件夹异常");
|
| | | }
|
| | | });
|
| | | };
|
| | | if (directory == Common.Config.Instance.FullPath)
|
| | | {
|
| | | btnButon.CanClick = false;
|
| | | }
|
| | | }
|
| | |
|
| | | private void AddDirectoryRowControl(VerticalListControl listView, string directoryName, string directory, bool addLine)
|
| | | {
|
| | | string dirNewName = directoryName;
|
| | | if (decryptPassword == true)
|
| | | {
|
| | | try
|
| | | {
|
| | | dirNewName = UserCenterLogic.DecryptPassword(UserCenterResourse.FileEncryptKey, directoryName);
|
| | | }
|
| | | catch { dirNewName = directoryName; }
|
| | | }
|
| | |
|
| | | var row1 = new RowLayoutControl(listView.rowSpace / 2);
|
| | | listView.AddChidren(row1);
|
| | | var btnName = row1.frameTable.AddLeftCaption(dirNewName, 800);
|
| | | btnName.IsMoreLines = true;
|
| | | if (addLine == true)
|
| | | {
|
| | | row1.frameTable.AddBottomLine();
|
| | | }
|
| | | row1.frameTable.AddRightArrow();
|
| | |
|
| | | row1.frameTable.ButtonClickEvent += (sender, e) =>
|
| | | {
|
| | | //初始化中部信息
|
| | | this.decryptPassword = false;
|
| | | this.InitMiddleFrame(System.IO.Path.Combine(directory, directoryName));
|
| | | };
|
| | | }
|
| | |
|
| | | private void AddFileRowControl(VerticalListControl listView, string fileName, string directory, bool addLine)
|
| | | {
|
| | | string fileNewName = fileName;
|
| | | if (decryptPassword == true && fileName.StartsWith("Device_") == false)
|
| | | {
|
| | | try
|
| | | {
|
| | | fileNewName = UserCenterLogic.DecryptPassword(UserCenterResourse.FileEncryptKey, fileName);
|
| | | }
|
| | | catch { fileNewName = fileName; }
|
| | | }
|
| | |
|
| | | var row1 = new RowLayoutControl(listView.rowSpace / 2);
|
| | | listView.AddChidren(row1);
|
| | | var btnName = row1.frameTable.AddLeftCaption(fileNewName, 800);
|
| | | btnName.IsMoreLines = true;
|
| | | if (addLine == true)
|
| | | {
|
| | | row1.frameTable.AddBottomLine();
|
| | | }
|
| | | row1.frameTable.AddRightArrow();
|
| | |
|
| | | var btnUpLoad = row1.AddEditorControl();
|
| | | btnUpLoad.Text = "上传";
|
| | | btnUpLoad.ButtonClickEvent += (sender, e) =>
|
| | | {
|
| | | this.ShowMassage(ShowMsgType.Confirm, "是否上传该文件(测试)?", () =>
|
| | | {
|
| | | HdlThreadLogic.Current.RunThread(() =>
|
| | | {
|
| | | string tagrtFile = System.IO.Path.Combine(directory, fileName);
|
| | | HdlBackupLogic.Current.UpLoadByteDataToOptionBackup(fileName, HdlFileLogic.Current.ReadFileByteContent(tagrtFile));
|
| | | });
|
| | | });
|
| | | };
|
| | |
|
| | | var btnDelete = row1.AddDeleteControl();
|
| | | btnDelete.ButtonClickEvent += (sender, e) =>
|
| | | {
|
| | | this.ShowMassage(ShowMsgType.Confirm, "是否清除该缓存文件", () =>
|
| | | {
|
| | | var myFile = System.IO.Path.Combine(directory, fileName);
|
| | | try
|
| | | {
|
| | | System.IO.File.Delete(myFile);
|
| | | row1.RemoveFromParent();
|
| | | }
|
| | | catch (Exception ex)
|
| | | {
|
| | | this.ShowMassage(ShowMsgType.Error, "清除缓存文件异常");
|
| | | HdlLogLogic.Current.WriteLog(ex, "清除缓存文件异常");
|
| | | }
|
| | | });
|
| | | };
|
| | |
|
| | | row1.frameTable.ButtonClickEvent += (sender, e) =>
|
| | | {
|
| | | var form = new HideOptionFileContentForm();
|
| | | form.AddForm(System.IO.Path.Combine(directory, fileName));
|
| | | };
|
| | | }
|
| | |
|
| | | #endregion
|
| | |
|
| | | #region ■ 一般方法___________________________
|
| | |
|
| | | #endregion
|
| | | }
|
| | | }
|