private void LpViewModel_UploadClickEvent(LocalProgramListViewModel local, ProgramViewModel obj)
        {
            Stream stream = default;

            using (var fileStream = new FileStream(System.IO.Path.Combine(local.Path, obj.Name), FileMode.Open, FileAccess.Read, FileShare.Read))
            {
                byte[] bytes = new byte[fileStream.Length];
                fileStream.Read(bytes, 0, bytes.Length);
                fileStream.Close();
                stream = new MemoryStream(bytes);
            }

            Task.Factory.StartNew(new Action(() =>
            {
                EventBus.Default.TriggerAsync(new UpLoadProgramClientEventData
                {
                    FileParameter = new Common.FileParameter(stream, obj.Name),
                    ConnectId     = local.ConnectId,
                    FileHashCode  = obj.FileHash
                });
            }));
            modalControl = new UpLoadLocalProgramControl(local.Path, obj.FileHash);
            modalControl.ProgramUploadEvent += Modal_ProgramUploadEvent;
            new PopupWindow(modalControl, 900, 590, "上传本地程序").ShowDialog();
            modalControl = null;
        }
 public LocalProgramListControl()
 {
     InitializeComponent();
     this.DataContext                 = lpViewModel = new LocalProgramListViewModel();
     lpViewModel.UploadClickEvent    += LpViewModel_UploadClickEvent;
     lpViewModel.CheckedProgramEvent += CheckedLocalProgram;
     lpViewModel.PagePagingEvent     += LpViewModel_PagePagingEvent;
     lpViewModel.DeleteProgramEvent  += LpViewModel_DeleteProgramEvent;
     lpViewModel.EditProgramEvent    += LpViewModel_EditProgramEvent;
     Loaded += LocalProgramListControl_Loaded;
     lpViewModel.Init();
 }