亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? attachments.ascx.cs

?? BugNET is an issue tracking and project issue management solution built using the ASP.NET web applic
?? CS
字號:
using System;
using System.Data;
using System.Configuration;
using System.Collections.Generic;
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 BugNET.BusinessLogicLayer;
using BugNET.UserInterfaceLayer;
using System.IO;
using log4net;

namespace BugNET.Issues.UserControls
{
    public partial class Attachments : System.Web.UI.UserControl, IIssueTab
    {
        private static readonly ILog Log = LogManager.GetLogger(typeof(Attachments));
        private int _IssueId = 0;
        private int _ProjectId = 0;
        
        /// <summary>
        /// Handles the Load event of the Page control.
        /// </summary>
        /// <param name="sender">The source of the event.</param>
        /// <param name="e">The <see cref="System.EventArgs"/> instance containing the event data.</param>
        protected void Page_Load(object sender, EventArgs e)
        {

        }

        #region IIssueTab Members

        /// <summary>
        /// Gets or sets the bug id.
        /// </summary>
        /// <value>The bug id.</value>
        public int IssueId
        {
            get { return _IssueId; }
            set { _IssueId = value; }
        }

        /// <summary>
        /// Gets or sets the project id.
        /// </summary>
        /// <value>The project id.</value>
        public int ProjectId
        {
            get { return _ProjectId; }
            set { _ProjectId = value; }
        }

        /// <summary>
        /// Initializes this instance.
        /// </summary>
        public void Initialize()
        {
            AttachmentsDataGrid.Columns[0].HeaderText =  GetLocalResourceObject("AttachmentsGrid.FileNameHeader.Text").ToString();
            AttachmentsDataGrid.Columns[1].HeaderText =  GetLocalResourceObject("AttachmentsGrid.SizeHeader.Text").ToString();
            AttachmentsDataGrid.Columns[2].HeaderText =  GetLocalResourceObject("AttachmentsGrid.Description.Text").ToString();
            BindAttachments();

            //check users role permission for adding an attachment
            if (!Page.User.Identity.IsAuthenticated || !ITUser.HasPermission(ProjectId, Globals.Permission.ADD_ATTACHMENT.ToString()))
                pnlAddAttachment.Visible = false;

            if (!Page.User.Identity.IsAuthenticated || !ITUser.HasPermission(ProjectId, Globals.Permission.DELETE_ATTACHMENT.ToString()))
                AttachmentsDataGrid.Columns[3].Visible = false;
        }

        #endregion

        /// <summary>
        /// Binds the attachments.
        /// </summary>
        private void BindAttachments()
        {
            List<IssueAttachment> attachments = IssueAttachment.GetIssueAttachmentsByIssueId(_IssueId);

            if (attachments.Count == 0)
            {
                lblAttachments.Text = GetLocalResourceObject("NoAttachments").ToString();
                lblAttachments.Visible = true;
            }
            else
            {
                lblAttachments.Visible = false;
                AttachmentsDataGrid.DataSource = attachments;
                AttachmentsDataGrid.DataBind();   
            }
        }


        /// <summary>
        /// Handles the ItemDataBound event of the AttachmentsDataGrid control.
        /// </summary>
        /// <param name="sender">The source of the event.</param>
        /// <param name="e">The <see cref="System.Web.UI.WebControls.DataGridItemEventArgs"/> instance containing the event data.</param>
        protected void AttachmentsDataGrid_ItemDataBound(object sender, DataGridItemEventArgs e)
        {
            if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
            {

                IssueAttachment currentAttachment = (IssueAttachment)e.Item.DataItem;
                ((HtmlAnchor)e.Item.FindControl("lnkAttachment")).InnerText = currentAttachment.FileName;
                ((HtmlAnchor)e.Item.FindControl("lnkAttachment")).HRef = "DownloadAttachment.axd?id=" + currentAttachment.Id.ToString();
                ImageButton lnkDeleteAttachment = (ImageButton)e.Item.FindControl("lnkDeleteAttachment");
                lnkDeleteAttachment.OnClientClick = string.Format("return confirm('{0}');", GetLocalResourceObject("DeleteAttachment").ToString());
                LinkButton cmdDeleteAttachment = (LinkButton)e.Item.FindControl("cmdDeleteAttachment");
                cmdDeleteAttachment.OnClientClick = string.Format("return confirm('{0}');", GetLocalResourceObject("DeleteAttachment").ToString());

                float size;
                string label;
                if (currentAttachment.Size > 1000)
                {
                    size = currentAttachment.Size / 1000f;
                    label = string.Format("{0} kb", size.ToString("##,##"));
                }
                else
                {
                    size = currentAttachment.Size;
                    label = string.Format("{0} b", size.ToString("##,##"));
                }
                ((Label)e.Item.FindControl("lblSize")).Text = label;
            }
        }

        /// <summary>
        /// Handles the ItemCommand event of the dtgAttachment control.
        /// </summary>
        /// <param name="source">The source of the event.</param>
        /// <param name="e">The <see cref="T:System.Web.UI.WebControls.DataGridCommandEventArgs"/> instance containing the event data.</param>
        protected void AttachmentsDataGrid_ItemCommand(object source, DataGridCommandEventArgs e)
        {
            switch (e.CommandName)
            {
                case "Delete":
                    IssueAttachment.DeleteIssueAttachment(Convert.ToInt32(e.CommandArgument));
                    break;
            }
            BindAttachments();
        }

        /// <summary>
        /// Handles the Click event of the LinkButton1 control.
        /// </summary>
        /// <param name="sender">The source of the event.</param>
        /// <param name="e">The <see cref="System.EventArgs"/> instance containing the event data.</param>
        protected void LinkButton1_Click(object sender, EventArgs e)
        {
            // Do something that needs to be done such as refresh a gridView
            // say you had a gridView control called gvMyGrid displaying all 
            // the files uploaded. Refresh the data by doing a databind here.
            // gvMyGrid.DataBind();
            BindAttachments();
        }

        /// <summary>
        /// Alloweds the file extensions.
        /// </summary>
        /// <value>The allowed file extensions.</value>
        /// <returns></returns>
        protected string AllowedFileExtensions
        {
             get { return HostSetting.GetHostSetting("AllowedFileExtensions"); }
            
        }


        /// <summary>
        /// Gets the file size limit.
        /// </summary>
        /// <value>The file size limit.</value>
        protected string FileSizeLimit
        {
            get { return HostSetting.GetHostSetting("FileSizeLimit"); }

        }
    }
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲一区二区三区视频在线| 国产精品一区二区三区乱码 | 国产日韩影视精品| 91麻豆精品一区二区三区| 日韩电影在线一区| 色婷婷亚洲精品| 国产成人啪免费观看软件| 亚洲成人黄色影院| 最新不卡av在线| 欧洲日韩一区二区三区| 国产裸体歌舞团一区二区| 亚洲人成伊人成综合网小说| 精品国产青草久久久久福利| 欧洲在线/亚洲| 波多野结衣亚洲| 国产精品一区免费视频| 日本女优在线视频一区二区| 久久日韩粉嫩一区二区三区 | 久久成人久久鬼色| 亚洲一区在线观看视频| 亚洲特黄一级片| 日本一区二区免费在线观看视频| 精品视频一区二区三区免费| 91女神在线视频| 国产.精品.日韩.另类.中文.在线.播放| 视频一区免费在线观看| 亚洲一区二区欧美| 中文字幕av一区 二区| 久久久综合激的五月天| 成人高清视频在线观看| 国产69精品久久久久777| 日韩福利电影在线| 亚洲超碰97人人做人人爱| 亚洲人一二三区| 国产精品久久久久久久久免费丝袜| 不卡欧美aaaaa| www.欧美亚洲| 97精品国产露脸对白| jizzjizzjizz欧美| 91浏览器入口在线观看| 成人精品在线视频观看| 国产在线精品国自产拍免费| 日韩精品视频网| 蜜臀精品久久久久久蜜臀| 麻豆国产欧美一区二区三区| 26uuu精品一区二区 | 亚洲激情五月婷婷| 欧美精品在线观看一区二区| 欧美性xxxxxxxx| 热久久国产精品| 激情深爱一区二区| www.色综合.com| 欧美午夜一区二区| 欧美少妇bbb| 精品美女在线观看| 综合激情成人伊人| 亚洲精品日产精品乱码不卡| 爽爽淫人综合网网站| 国产综合成人久久大片91| 国产精品1区2区3区| 成人黄页毛片网站| 欧美日韩午夜精品| 日韩亚洲欧美在线观看| 中文字幕一区三区| 亚洲成人在线观看视频| 精品在线免费观看| 欧美成人综合网站| 极品美女销魂一区二区三区免费| 欧美手机在线视频| 一片黄亚洲嫩模| 在线免费av一区| 亚洲免费观看高清完整版在线| 国产精品资源在线| 精品黑人一区二区三区久久| 亚洲日本欧美天堂| 一本大道久久a久久精二百| 日韩一区日韩二区| 色狠狠综合天天综合综合| **网站欧美大片在线观看| 99热国产精品| 夜夜亚洲天天久久| 欧美日韩精品欧美日韩精品| 日本强好片久久久久久aaa| 日韩一区二区免费在线电影| 麻豆精品一区二区三区| 国产亚洲婷婷免费| 99精品视频一区二区| 欧美国产一区二区| 99久久精品国产精品久久| 一区二区三区丝袜| 欧美一区二区三区视频| 激情文学综合网| 亚洲欧美成人一区二区三区| 欧美日韩精品三区| 国产福利精品一区| 亚洲男人都懂的| 日韩一区二区三免费高清| 国产成+人+日韩+欧美+亚洲| 亚洲女与黑人做爰| 欧美一区二区在线免费播放| 婷婷久久综合九色综合绿巨人| 欧美成人女星排名| 99综合影院在线| 日产国产欧美视频一区精品| 日本一区二区免费在线| 欧美日韩高清一区二区不卡| 国产精品资源在线| 亚洲一级在线观看| 久久久国产综合精品女国产盗摄| 91免费视频大全| 久久99精品国产麻豆婷婷| 亚洲欧美另类小说视频| 日韩欧美第一区| 日本国产一区二区| 韩国女主播一区| 亚洲不卡一区二区三区| 欧美高清在线一区二区| 91精品国产91久久综合桃花| 成人午夜私人影院| 麻豆国产精品视频| 亚洲乱码国产乱码精品精小说| 精品欧美一区二区久久| 91美女片黄在线观看91美女| 久久成人免费电影| 亚洲午夜视频在线观看| 日本一区二区三区四区| 欧美一区二区三区视频在线观看| www.亚洲在线| 国产 欧美在线| 精品一区二区免费| 午夜伊人狠狠久久| 亚洲女子a中天字幕| 中文字幕免费不卡| 久久免费电影网| 欧美zozo另类异族| 欧美一二三四在线| 欧美日韩和欧美的一区二区| 91小视频在线| www.亚洲色图| 波多野结衣中文一区| 国产一区二区三区国产| 蜜桃视频在线观看一区二区| 午夜私人影院久久久久| 亚洲乱码一区二区三区在线观看| 国产欧美日韩综合| 久久久久综合网| 久久久www成人免费毛片麻豆 | 男人的j进女人的j一区| 亚洲国产综合色| 亚洲午夜精品一区二区三区他趣| 亚洲国产精品人人做人人爽| 国产精品久久久99| 亚洲国产精品成人综合| 国产精品视频看| 国产精品久久久久影视| 日韩理论片一区二区| 亚洲精品国产a久久久久久| 亚洲精品中文字幕在线观看| 一区二区三区在线观看欧美| 亚洲综合在线电影| 性久久久久久久久| 亚洲成人1区2区| 免费高清在线一区| 国产美女在线精品| 粉嫩aⅴ一区二区三区四区五区| 久久66热偷产精品| 国产原创一区二区三区| 国产伦精品一区二区三区免费迷| 久久电影网站中文字幕| 亚洲电影激情视频网站| 午夜精品久久久久久久久久| 裸体在线国模精品偷拍| 国产sm精品调教视频网站| 色综合婷婷久久| 欧美精品123区| 久久久久成人黄色影片| 亚洲人被黑人高潮完整版| 亚洲h精品动漫在线观看| 久久av资源站| 91香蕉视频污在线| 日韩一级片在线播放| 国产精品嫩草久久久久| 亚洲成人av在线电影| 国产真实乱对白精彩久久| 91在线观看视频| 欧美一区二区三区日韩| 亚洲国产精品二十页| 丝袜亚洲另类欧美综合| 粉嫩av一区二区三区在线播放| 欧美中文字幕一区二区三区| 精品久久一区二区三区| 亚洲激情男女视频| 国产乱子伦一区二区三区国色天香| 91浏览器入口在线观看| 久久这里只精品最新地址| 亚洲午夜激情网站| 波多野结衣欧美| 久久影视一区二区| 日韩高清电影一区| 91高清在线观看|