private void SetFilesShow(List <GroupFileItem> files) { panel2.SuspendLayout(); //清楚缓存 ClearControls(); if (files?.Count > 0 && panel2.Width > 20) { int location_y = 2 - panel2.VerticalScroll.Value; //添加子控件 foreach (var m in files) { FileItemShow item = new FileItemShow( UserClient.Net_File_Client, // 文件传送客户端 m_Factory, // 文件第一大类 m_Group, // 文件第二大类 m_Id, // 文件第三大类 DeleteCheck // 删除键是否激活方法 ); panel2.Controls.Add(item); // 添加显示 item.BackColor = Color.White; // 白色的背景 item.BorderStyle = BorderStyle.FixedSingle; // 边框样式 item.SetFile(m, () => m.Owner == UserClient.UserAccount.UserName); // 设置文件显示并提供一个删除使能的权限,此处设置是登录名和上传人不一致时,删除键不能点击 item.Location = new Point(2, location_y); // 控件的位置 int width = panel2.VerticalScroll.Visible ? panel2.Width - 4 - SystemInformation.VerticalScrollBarWidth : panel2.Width - 4; // 控件的宽度 item.Size = new Size(width, item.Size.Height); // 控件的大小 item.Anchor = AnchorStyles.Top | AnchorStyles.Left | AnchorStyles.Right; // 控件随窗口变化的样式 location_y += item.Height + 4; // 位置偏移 FilesControls.Push(item); // 控件压入堆栈 } } panel2.ResumeLayout(); }
private void SetFilesShow(List <HslSoftFile> files) { panel2.SuspendLayout(); //清楚缓存 ClearControls(); if (files?.Count > 0 && panel2.Width > 20) { int location_y = 2; //添加子控件 foreach (var m in files) { FileItemShow item = new FileItemShow(UserClient.ServerIp, CommonLibrary.CommonLibrary.Port_Share_File, () => { if (m.UploadName != UserClient.UserAccount.UserName) { MessageBox.Show("无法删除不是自己上传的文件。"); return(false); } else { return(MessageBox.Show("请确认是否真的删除?", "删除确认", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.Yes); } }); panel2.Controls.Add(item); item.BackColor = Color.White; item.BorderStyle = BorderStyle.FixedSingle; item.SetFile(m, () => m.UploadName == UserClient.UserAccount.UserName); item.Location = new Point(2, location_y); int width = panel2.VerticalScroll.Visible ? panel2.Width - 4 - SystemInformation.VerticalScrollBarWidth : panel2.Width - 4; item.Size = new Size(width, item.Size.Height); item.Anchor = AnchorStyles.Top | AnchorStyles.Left | AnchorStyles.Right; location_y += item.Height + 4; FilesControls.Push(item); } } panel2.ResumeLayout(); }