zoukankan      html  css  js  c++  java
  • Sharepoint 列表 附件 小功能

    代码如下:

    Page_Load方法

           cblattCase.Items.Clear();
    
                    for (int i = 0; i < item.Attachments.Count; i++)
                    {
                        cblattCase.Items.Add(new ListItem("<a href='" + GetSPListItemAttachmentUrl(item, i) + "' target='_black'>" + item.Attachments[i] + "<a>", i.ToString()));
                    }

    附件添加及删除

     /// <summary>
        /// 添加附件
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void btnUploadCase_OnClick(object sender, EventArgs e)
        {
            string id = Request["id"];
            if (id == null)
            {
                ShowErr("请先保存草稿");
                return;
            }
            if (fudCase.FileBytes.Length == 0)
            {
                ShowErr("请先选择上传文件");
                return;
            }
            //SPList list = SPContext.Current.Web.Lists["servicerequest"];
    
            SPListItem item = null;
            //case附件删除
            item = list.Items.GetItemById(int.Parse(Request["id"]));
            //case附件上传 
            for (int i = 0; i < item.Attachments.Count; i++)
            {
                if (fudCase.FileName == item.Attachments[i])
                {
                    ShowErr("文件名重复!");
                    return;
                }
            }
            item.Attachments.Add(fudCase.FileName, fudCase.FileBytes);
            item.Update();
            //刷新控件
    
            cblattCase.Items.Clear();
    
    
            for (int i = 0; i < item.Attachments.Count; i++)
            {
                cblattCase.Items.Add(new ListItem("<a href='" + GetSPListItemAttachmentUrl(item, i) + "' target='_black'>" + item.Attachments[i] + "<a>", i.ToString()));
            }
    
        }
        public static string GetSPListItemAttachmentUrl(SPListItem item, int index)
        {
    
            return item.Attachments.UrlPrefix + item.Attachments[index];
        }
        /// <summary>
        /// 删除附件
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void btnDelCase_OnClick(object sender, EventArgs e)
        {
            if (id == null)
            {
                ShowErr("请先保存草稿");
                return;
            }
    
    
            SPListItem item = null;
            //case附件删除
            item = list.Items.GetItemById(int.Parse(Request["id"]));
            List<string> attName = new List<string>();
            if (item.Attachments.Count > 0)
            {
                int tmpIndex = 0;
                foreach (ListItem lItem in cblattCase.Items)
                {
                    if (lItem.Selected)
                    {
                        attName.Add(item.Attachments[tmpIndex]);
                    }
                    tmpIndex++;
                }
    
                for (int i = 0; i < attName.Count; i++)
                {
                    item.Attachments.Delete(attName[i]);
                }
                item.Update();
            }
    
            //刷新控件
    
            cblattCase.Items.Clear();
    
            for (int i = 0; i < item.Attachments.Count; i++)
            {
                cblattCase.Items.Add(new ListItem("<a href='" + GetSPListItemAttachmentUrl(item, i) + "' target='_black'>" + item.Attachments[i] + "<a>", item.Attachments[i]));
            }
    
        }

    前端代码:

               <tr>
                    <td class="padding" colspan="6" height="30">
                        <asp:FileUpload ID="fudCase" runat="server" CssClass="textboxCss1"  width="500"/>
                        <asp:Button ID="btnUploadCase" runat="server"  Text="上传附件" OnClick="btnUploadCase_OnClick" CssClass="textboxCss1" />
                        <asp:Button ID="btnDelCase" runat="server"  Text="删除附件" OnClick="btnDelCase_OnClick" CssClass="textboxCss1" />
                    </td>
                </tr>
                <tr>
                    <td style="padding:8px;" colspan="3">
                        <asp:CheckBoxList ID="cblattCase" runat="server" AutoPostBack="false"></asp:CheckBoxList>
                    </td>
                </tr>
  • 相关阅读:
    用友U8 | 【存货管理】存货模块中采购入库单生成凭证的关联单据
    用友U8 | 【应收款管理】手工核销时提示:某某客户被其他用户锁定
    SQL Profiler 跟踪器工具使用说明
    转载--form表单的默认提交行为
    转载--c# chart控件基本使用方法(柱状图和饼图)
    转载--C#使用chart绘制实时折线图,波形图
    控件的InvokeRequired方法
    转载--浅析前端安全之 XSS
    转载--mysql语句如何插入含单引号或反斜杠的值详解
    转载--C#实现WinForm下DataGridView控件的拷贝和粘贴
  • 原文地址:https://www.cnblogs.com/gzh4455/p/2649920.html
Copyright © 2011-2022 走看看