SharePoint 图片库操作

    技术2022-05-11  78

    using  System; using  System.Data; using  System.Configuration; using  System.Collections; using  System.Web; using  System.Web.Security; using  System.Web.UI; using  System.Web.UI.WebControls; using  System.Web.UI.WebControls.WebParts; using  System.Web.UI.HtmlControls; using  System.IO; using  Microsoft.SharePoint; using  yesinda.yesindakms.sharepoint; public   partial   class  usercontrol_ImageList : System.Web.UI.UserControl {    public string ReturnValue = String.Empty;    public string FolderPath = "111";    protected void Page_Load(object sender, EventArgs e)    {        if (!IsPostBack)        {            GetFolder();            BindGrid();        }    }    /// <summary>    /// 创建数据源    /// </summary>    /// <returns></returns>    ICollection CreateDataSource()    {        DataTable dt = new DataTable();  //创建一个名为mytable的DataTable对象形        DataColumn dc = new DataColumn();         //创建一个列对象        dc.DataType = System.Type.GetType("System.Int32");  //指定该列的数据类型        dc.AutoIncrement = true;              //该列为自动增涨列        dc.AutoIncrementSeed = 1;          //初始值        dc.AutoIncrementStep = 2;          //增量        dc.Caption = "id";                     //设置列的标题        dc.ColumnName = "序号";       //设置 列集合对象中的列的名称,datagrid中显示该列名.        dc.Unique = true;                      //为此列创建唯一性约        dc.AllowDBNull = false;           //不允许为空        dt.Columns.Add(dc);              //将该列对象加入到表mytable的列集合中        //普通列        DataColumn dc1 = new DataColumn();        dc1.DataType = System.Type.GetType("System.String");        dc1.AllowDBNull = false;        dc1.Caption = "path";        dc1.ColumnName = "路径";        dc1.DefaultValue = 25;        dt.Columns.Add(dc1);        DataColumn dc2 = new DataColumn();        dc2.DataType = System.Type.GetType("System.String");        dc2.AllowDBNull = false;        dc2.Caption = "path";        dc2.ColumnName = "完整路径";        dc2.DefaultValue = 25;        dt.Columns.Add(dc2);        SPSite sps = yesinda.yesindakms.sharepoint.List.ListLib.findParamSite("/sites/TQOA/"this.Context);        sps.AllowUnsafeUpdates = true;        SPWeb spw = sps.OpenWeb();        spw.AllowUnsafeUpdates = true;        SPList list = spw.Lists["图片"];        SPFolder folder = list.RootFolder;        SPFolderCollection folder2 = list.RootFolder.SubFolders;        foreach (SPFolder folder3 in list.RootFolder.SubFolders)        {            if (folder3.Name != "")            {                if (folder3.Name == "111")                {                    foreach (SPFile file in folder3.Files)                    {                        if (dt != null)                        {                            DataRow dr = dt.NewRow();                            dr[0= file.Item.ID;                            dr[1= file.Name;                            dr[2= "http://" + sps.HostName + file.ServerRelativeUrl;                            dt.Rows.Add(dr);                        }                    }                }            }        }        DataView dv = new DataView(dt);        return dv;    }    ///获取图片库下的文件夹    public void GetFolder()    {        SPSite sps = yesinda.yesindakms.sharepoint.List.ListLib.findParamSite("/sites/TQOA/"this.Context);        sps.AllowUnsafeUpdates = true;        SPWeb spw = sps.OpenWeb();        spw.AllowUnsafeUpdates = true;        SPList list = spw.Lists["图片"];        SPFolder folder = list.RootFolder;        foreach (SPFolder folder3 in list.RootFolder.SubFolders)        {            if (folder3.Name.IndexOf("_"!= 0)            {                this.ddlSelect.Items.Add(folder3.Name);            }        }    }    /// <summary>    /// 绑定GridView控件    /// </summary>    public void BindGrid()    {        this.GridView1.DataKeyNames = new string[] "序号" };        this.GridView1.DataSource = CreateDataSource();        this.GridView1.DataBind();        this.ddlCurrentPage.Items.Clear();        for (int i = 1; i <= this.GridView1.PageCount; i++)        {            this.ddlCurrentPage.Items.Add(i.ToString());        }        if (this.GridView1.PageIndex != 0)        {            this.ddlCurrentPage.SelectedIndex = this.GridView1.PageIndex;        }    }    protected void btnUpImage_Click(object sender, EventArgs e)    {        AddImage();    }    上传图片    //全选    protected void CheckAll(object sender, EventArgs e)    {        CheckBox cbx = (CheckBox)sender;        foreach (GridViewRow gvr in GridView1.Rows)        {            CheckBox ch = (CheckBox)gvr.FindControl("ItemCheckBox");            ch.Checked = cbx.Checked;        }    }    /// <summary>    /// 将图片库中的图片插入到文本中    /// </summary>    /// <param name="sender"></param>    /// <param name="e"></param>    protected void btnOutPut_Click(object sender, EventArgs e)    {        SPSite sps = yesinda.yesindakms.sharepoint.List.ListLib.findParamSite("/sites/TQOA/"this.Context);        sps.AllowUnsafeUpdates = true;        SPWeb spw = sps.OpenWeb();        spw.AllowUnsafeUpdates = true;        SPList list = spw.Lists["图片"];        string ReturnString = String.Empty;        foreach (GridViewRow gvr in this.GridView1.Rows)        {            CheckBox ch = (CheckBox)gvr.FindControl("ItemCheckBox");            if (ch.Checked)            {                SPListItem listcon = list.Items.GetItemById(Convert.ToInt32(GridView1.DataKeys[gvr.RowIndex].Value.ToString()));                ReturnString += sps.Url + "/" + listcon.Url;            }        }        Response.Write("<script>window.returnValue='" + ReturnString + "';window.close();</script>");    }    protected void radbtnUpload_SelectedIndexChanged(object sender, EventArgs e)    {        if (this.radbtnUpload.SelectedIndex == 0)        {            this.Panel1.Visible = true;            this.Panel2.Visible = false;        }        else        {            this.Panel1.Visible = false;            this.Panel2.Visible = true;        }    }    protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)    {        e.Row.Cells[2].Attributes.Add("style""display:none");        e.Row.Cells[1].Attributes.Add("style""display:none");        //滑过GridView控件显示不同颜色        if (e.Row.RowType == DataControlRowType.DataRow)        {            e.Row.Attributes.Add("onmouseover""c=this.style.backgroundColor;this.style.backgroundColor='#f0ffff';javascript:document.getElementById('imgshow').src='" + e.Row.Cells[2].Text + "';");            e.Row.Attributes.Add("onmouseout""this.style.backgroundColor=c");        }        this.lblCurrentPage.Text = string.Format("当前第{0}页/总共{1}页"this.GridView1.PageIndex + 1this.GridView1.PageCount);    }    protected void lnkbtnFrist_Click(object sender, EventArgs e)    {        //显示首页        this.GridView1.PageIndex = 0;        BindGrid();    }    protected void lnkbtnPre_Click(object sender, EventArgs e)    {        //显示上一页        if (this.GridView1.PageIndex > 0)        {            this.GridView1.PageIndex = this.GridView1.PageIndex - 1;            BindGrid();        }    }    protected void lnkbtnNext_Click(object sender, EventArgs e)    {        //显示下一页        if (this.GridView1.PageIndex < this.GridView1.PageCount)        {            this.GridView1.PageIndex = this.GridView1.PageIndex + 1;            BindGrid();        }    }    protected void lnkbtnLast_Click(object sender, EventArgs e)    {        //显示最后一页        this.GridView1.PageIndex = this.GridView1.PageCount;        BindGrid();    }    protected void ddlName_SelectedIndexChanged(object sender, EventArgs e)    {        //选择指定页显示        this.GridView1.PageIndex = this.ddlCurrentPage.SelectedIndex;        BindGrid();    }    protected void lnkSelect_Command(object sender, CommandEventArgs e)    {        LinkButton lb = (LinkButton)sender;        DataControlFieldCell dcf = (DataControlFieldCell)lb.Parent;        GridViewRow gvr = (GridViewRow)dcf.Parent;        GridView1.SelectedIndex = gvr.RowIndex;        Response.Write("<script>window.returnValue='"+gvr.Cells[2].Text+"';window.close();</script>");    }    protected void ddlSelect_SelectedIndexChanged(object sender, EventArgs e)    {    }}  

    最新回复(0)