zoukankan      html  css  js  c++  java
  • WinForm动态添加控件及其事件(转)

    出处:http://blog.sina.com.cn/s/blog_60d576800100tf61.html

    1WinForm动态添加控件及其事件        private void PhotoForm_Load(object sender, System.EventArgs e)
     2WinForm动态添加控件及其事件        {
     3WinForm动态添加控件及其事件            this.LoadPhoto();
     4WinForm动态添加控件及其事件        }
     5WinForm动态添加控件及其事件        private void LoadPhoto()
     6WinForm动态添加控件及其事件        {
     7WinForm动态添加控件及其事件            int  i= 0;
     8WinForm动态添加控件及其事件            string url = this.GetUrl();
     9WinForm动态添加控件及其事件            string[] sFiles = System.IO.Directory.GetFiles(url+"\images\small\","*.*");
    10WinForm动态添加控件及其事件            for(i=0;i<sFiles.Length;i++)
    11WinForm动态添加控件及其事件            {
    12WinForm动态添加控件及其事件                this.ViewPhoto(i,sFiles[i].ToString());
    13WinForm动态添加控件及其事件            }
    14WinForm动态添加控件及其事件        }
    15WinForm动态添加控件及其事件        /// <summary>
    16WinForm动态添加控件及其事件        /// 取项目路径
    17WinForm动态添加控件及其事件        /// </summary>
    18WinForm动态添加控件及其事件        /// <returns></returns>
    19WinForm动态添加控件及其事件        private string GetUrl()
    20WinForm动态添加控件及其事件        {
    21WinForm动态添加控件及其事件            string b = Application.StartupPath;
    22WinForm动态添加控件及其事件            int i = b.LastIndexOf("\");
    23WinForm动态添加控件及其事件            b = b.Substring(0,i);
    24WinForm动态添加控件及其事件            int j = b.LastIndexOf("\");
    25WinForm动态添加控件及其事件            b = b.Substring(0,j+1);
    26WinForm动态添加控件及其事件            return b; 
    27WinForm动态添加控件及其事件        }
    28WinForm动态添加控件及其事件        /// <summary>
    29WinForm动态添加控件及其事件        /// 加载图片控件
    30WinForm动态添加控件及其事件        /// </summary>
    31WinForm动态添加控件及其事件        /// <param name="i">图片序号</param>
    32WinForm动态添加控件及其事件        /// <param name="filePath">文件名</param>
    33WinForm动态添加控件及其事件        private void ViewPhoto(int i,string filePath)
    34WinForm动态添加控件及其事件        {
    35WinForm动态添加控件及其事件            string name="";
    36WinForm动态添加控件及其事件            name = "image_"+i.ToString();
    37WinForm动态添加控件及其事件            PictureBox pb = new PictureBox();
    38WinForm动态添加控件及其事件            pb.Name = name;
    39WinForm动态添加控件及其事件            pb.Image=System.Drawing.Image.FromFile(filePath);
    40WinForm动态添加控件及其事件            //保存文件名
    41WinForm动态添加控件及其事件            pb.Tag = filePath;
    42WinForm动态添加控件及其事件            this.Controls.Add(pb);
    43WinForm动态添加控件及其事件            pb.Width=128;
    44WinForm动态添加控件及其事件            pb.Height =96;
    45WinForm动态添加控件及其事件            pb.Location = new Point(x,y);
    46WinForm动态添加控件及其事件            x=x+230;
    47WinForm动态添加控件及其事件            if((i+1)%4==0 && i!=0)
    48WinForm动态添加控件及其事件            {
    49WinForm动态添加控件及其事件                x=100;
    50WinForm动态添加控件及其事件                y=y+120;
    51WinForm动态添加控件及其事件            }
    52WinForm动态添加控件及其事件            //添加事件
    53WinForm动态添加控件及其事件            pb.Click += new System.EventHandler(picture_Click);
    54WinForm动态添加控件及其事件
    55WinForm动态添加控件及其事件        }    
    56WinForm动态添加控件及其事件        private void picture_Click(object sender, System.EventArgs e)
    57WinForm动态添加控件及其事件        {
    58WinForm动态添加控件及其事件            PictureBox pb = (PictureBox)sender;
    59WinForm动态添加控件及其事件            string name = pb.Name;
    60WinForm动态添加控件及其事件            string path = pb.Tag.ToString();
    61WinForm动态添加控件及其事件        }

  • 相关阅读:
    [Swift]LeetCode1035.不相交的线 | Uncrossed Lines
    [Swift]LeetCode1034.边框着色 | Coloring A Border
    [Swift]LeetCode1033. 移动石子直到连续 | Moving Stones Until Consecutive
    [Swift]美人征婚问题
    [Swift]动态变化顶部状态栏(statusBar)的颜色
    [Swift-2019力扣杯春季决赛]4. 有效子数组的数目
    [Swift-2019力扣杯春季决赛]3. 最长重复子串
    [Swift-2019力扣杯春季决赛]2. 按字典序排列最小的等效字符串
    转 ORA-12638: 身份证明检索失败
    转 构建镜像
  • 原文地址:https://www.cnblogs.com/smileberry/p/4561679.html
Copyright © 2011-2022 走看看