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

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

WinForm动态添加控件及其事件(转)的更多相关文章

  1. winform 动态添加控件及事件

    for (int i = 0; i < 4; i++) { Button btn = new Button(); //btn.Name = dt.Rows[i]["ANDON_CONT ...

  2. WinForm中动态添加控件 出现事件混乱,解决办法记录。

    还是在抢票软件中出的问题,我没点击一个联系人,要生成一排控件,其中有席别combobox这样的下拉框控件,会出现如下图所示的问题:问题描述:在代码中动态创建的控件,事件混乱了,一个控件触发了所有同类型 ...

  3. winform导入导出excel,后台动态添加控件

    思路: 导入: 1,初始化一个OpenFileDialog类 (OpenFileDialog fileDialog = new OpenFileDialog();) 2, 获取用户选择文件的后缀名(s ...

  4. asp.net动态添加控件学习

    看了老师的教程后,自己一点感悟记录下来: 1.在页面提交后,动态生成的控件会丢失, 但如果生成控件的代码在pageload中,就可以,原理是每次生成页面都执行生成. 2.动态按件或页面原来控件, 在页 ...

  5. 怎样在不对控件类型进行硬编码的情况下在 C#vs 中动态添加控件

    文章ID: 815780 最近更新: 2004-1-12 这篇文章中的信息适用于: Microsoft Visual C# .NET 2003 标准版 Microsoft Visual C# .NET ...

  6. Android 在布局容器中动态添加控件

    这里,通过一个小demo,就可以掌握在布局容器中动态添加控件,以动态添加Button控件为例,添加其他控件同样道理. 1.addView 添加控件到布局容器 2.removeView 在布局容器中删掉 ...

  7. VC中动态添加控件

    VC中动态添加控件 动态控件是指在需要时由Create()创建的控件,这与预先在对话框中放置的控件是不同的. 一.创建动态控件: 为了对照,我们先来看一下静态控件的创建. 放置静态控件时必须先建立一个 ...

  8. jQuery EasyUI动态添加控件或者ajax加载页面后不能自动渲染问题的解决方法

    博客分类: jquery-easyui jQueryAjax框架HTML  现象: AJAX返回的html无法做到自动渲染为EasyUI的样式.比如:class="easyui-layout ...

  9. WPF:理解ContentControl——动态添加控件和查找控件

    WPF:理解ContentControl--动态添加控件和查找控件 我认为WPF的核心改变之一就是控件模型发生了重要的变化,大的方面说,现在窗口中的控件(大部分)都没有独立的Hwnd了.而且控件可以通 ...

随机推荐

  1. Karma:1. 集成 Karma 和 Jasmine 进行单元测试

    关于 Karma 会是一个系列,讨论在各种环境下,使用 Karma 进行单元测试. 本文讨论 karma 集成 Jasmine 进行单元测试. 初始化 NPM 实现初始化 NPM 包管理,创建 pac ...

  2. C#中截取字符串的几种方法

      1.根据单个分隔字符用split截取 例如 复制代码代码如下: string st="GT123_1"; string[] sArray=st.split("_&qu ...

  3. 使用PHP导入和导出CSV文件

    我们先准备mysql数据表,假设项目中有一张记录学生信息的表student,并有id,name,sex,age分别记录学生的姓名.性别.年龄等信息. CREATE TABLE `student` ( ...

  4. uva 10340 All in All

    水题,从头到尾扫一遍就可以了,输入两个字符串s和t,判断是否可以从t中删除0个或多个字符(其他字符顺序不变),得到字符串s.例如,abcde可以得到bce,但无法得到dc. #include<a ...

  5. boost的线程池和内存池 智能指针

    内存池为boost自带的 #include <boost/pool/pool.hpp> 或者另外一个开源的库: nedmalloc 一个高效率的库 线程池需要下载另外一个开源库 http: ...

  6. 搭建高可用mongodb集群(转)

    搭建高可用mongodb集群(一)——配置mongodb 搭建高可用mongodb集群(二)—— 副本集 搭建高可用mongodb集群(三)—— 深入副本集内部机制 搭建高可用mongodb集群(四) ...

  7. 基于WDF的PCI/PCIe接口卡Windows驱动程序(4)- 驱动程序代码(源文件)

    原文出处:http://www.cnblogs.com/jacklu/p/4687325.html 本篇文章将对PCIe驱动程序的源文件代码作详细解释与说明.整个WDF驱动程序工程共包含4个头文件(已 ...

  8. Fiddler抓包测试App接口

    Fiddler抓包测试App接口 使用Fiddler对手机App应用进行抓包,可以对App接口进行测试,也可以了解App传输中流量使用及请求响应情况,从而测试数据传输过程中流量使用的是否合理. 抓包过 ...

  9. 关于CacheLookup一个有趣的问题

    今天写一个与其他系统进行物料同步的接口,通过COM Business Connector调用Axapta3.0的方法将数据插入到物料表中,中间发生异常,事务回滚,再次调用的时候提示刚刚发生异常的物料已 ...

  10. Jsoncpp的使用

    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式. 易于人阅读和编写.同时也易于机器解析和生成. 它基于JavaScript Programming Lan ...