自定义用户控件,用来显示图片,又废弃了

Posted on 2006-06-27 14:34  fgp3  阅读(250)  评论(0)    收藏  举报

表记录转为数组:

//读取TITLE图片方法
    public string[] titleImgRead()
    {
        string strsql;
        string[] imgname;
        strsql = "SELECT [imgname] FROM [fn_titleimg] ORDER BY [uses] DESC";
        fn_db tmp = new fn_db(strsql);
        int j = tmp.FDataSource.Table.Rows.Count;
        imgname=new string[j];
        for(int i=0;i<j;i++)
        {
            imgname[i] = tmp.FDataSource.Table.Rows[i].ItemArray[0].ToString();
        }
        tmp.Free();
        return imgname;
       
    }

 

下面搞得太复杂.还用到分页

public partial class flyxnews_UserControl_imgchoose : System.Web.UI.UserControl
{
    string[] filenames;

    public string ImgUrl
    {
        get
        {
            string imgurltmp;
            imgurltmp = this.Imgpre.ImageUrl;
            return imgurltmp.Replace("../", "");
        }
    }
    protected void Page_Init(object sender, EventArgs e)
    {


    }
    protected void Page_Load(object sender, EventArgs e)
    {
        fn_dbop tmp = new fn_dbop();
        filenames = tmp.titleImgRead();
        this.pagesbtn(filenames.Length);


        if (!IsPostBack)
        {
            this.imgchosse(imgprefill(1));
            this.Imgpre.ImageUrl = "../images/title/0.gif";
        }
        else
        {
            this.imgchosse(imgprefill(3));
        }
    }
    //显示页数
    protected void pagesbtn(int count)
    {
        Label lblcount = new Label();
        lblcount.Width = 100;
        lblcount.Text = "总共" + count.ToString() + "个图片";
        this.Panelpages.Controls.Add(lblcount);
        if (count > 10)
        {
            int p = count / 10;
            if ((count % 10) != 0) { p++; }
            Button[] pagebtn = new Button[p + 1];
            for (int i = 1; i < p + 1; i++)
            {
                pagebtn[i] = new Button();
                pagebtn[i].Width = 20;
                pagebtn[i].Text = i.ToString();
                pagebtn[i].Click += new EventHandler(this.pagebtn_Click);
                this.Panelpages.Controls.Add(pagebtn[i]);
            }
        }
    }
    //分组
    protected string[] imgprefill(int intpages)
    {
        intpages = intpages - 1;
        string[] filenametmp;
        int m = 0;
        int intfirst = intpages * 10;
        int count = filenames.Length;
        if (count < 11)
        {
            m = count;
        }
        else
        {
            int p = count / 10;
            if ((count % 10) != 0) { p++; }
            p = p - 1;
            if (intpages == p)
            {
                m = count;
            }
            else
            {
                m = intfirst + 10;
            }
        }
        int k = m - intfirst;
        filenametmp = new string[k];
        k = 0;
        for (int i = intfirst; i < m; i++)
        {
            filenametmp[k] = filenames[i];
            k++;

        }
        return filenametmp;
    }
    //图片选择框函数
    protected void imgchosse(string[] names)
    {


        int j = names.Length;
        ImageButton[] img = new ImageButton[j];
        for (int i = 0; i < j; i++)
        {
            string imgid = names[i].Replace(".gif", "");
            img[i] = new ImageButton();
            img[i].ID = imgid;
            img[i].ToolTip = "请点击选择";
            img[i].AlternateText = "尝试贴图,可耻地失败鸟";
            img[i].CssClass = "postimg";
            img[i].BorderStyle = BorderStyle.Outset;
            img[i].BorderWidth = 2;
            string imgurl = "../" + names[i];
            img[i].Height = 50;
            img[i].Width = 50;
            img[i].ImageUrl = imgurl;
            img[i].Click += new ImageClickEventHandler(this.imgs_Click);
            this.Panelimgchoose.Controls.Add(img[i]);
        }
    }

    protected void imgs_Click(object sender, ImageClickEventArgs e)
    {
        this.Imgpre.ImageUrl = ((ImageButton)sender).ImageUrl;
    }
    protected void pagebtn_Click(object sender, EventArgs e)
    {
        int k = Convert.ToInt16(((Button)sender).Text);
        this.Panelimgchoose.Controls.Clear();
        this.imgchosse(imgprefill(k));
    }
}

博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3