winform动态添加控件显示排列 选中一个分类后,在panel控件中动态添加图片和文字,跟桌面上的图标一样。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了winform动态添加控件显示排列 选中一个分类后,在panel控件中动态添加图片和文字,跟桌面上的图标一样。相关的知识,希望对你有一定的参考价值。

未选前不确定有多少个图片,还有要排序,谢谢

参考技术A

首先控件的排序你可以交给控件来做,选一个flowLayoutPanel,控件扔下去就自动排序了。第二你的控件是不是自定义的,如果是自定义的控件,给click参数里面赋上你要显示的属性。将所有控件都动态生成在一个事件里面,通过属性再给外面赋值。

            for (int i = 0; i < 10; i++)
            
                Button b = new Button();
                this.Controls.Add(b);
                b.Click += b_Click;
            
            void b_Click(object sender, EventArgs e)
            
                //throw new NotImplementedException();
                Button b = (Button)sender;
                MessageBox.Show(b.Text);
            

给你个简单的例子照着改改就好了。

追问

picbox 和 labal

C#winform动态添加控件

第一步,想要添加什么对象,就先通过NEW关键字,实例化一个对象,创建一个对象的实体。
第二部,设置当前对象实体的属性值,事件等。
第三部,通过容器对象的Controls(该属性为一个集合)属性的Add方法添加你当前创建的对象实体。
这样,你就看到你动态添加了一个控件。
参考技术A 可以在窗体里面插入一个panel,在添加新控件的时候就向panel中添加就行了,
例:

//button点击事件
TextBox
t1
=
new
TextBox();//新建一个TextBox,可以给控件设置Name等属性
panel1.Controls.Add(t1);//向panel1添加新建的TextBox

其它控件添加方法基本相同

以上是关于winform动态添加控件显示排列 选中一个分类后,在panel控件中动态添加图片和文字,跟桌面上的图标一样。的主要内容,如果未能解决你的问题,请参考以下文章

c#winform中ImageList添加的图片选中后怎么用按钮记录下选中的图片是哪个

C# WinForm 自定义控件如何实现动态添加子控件

C# WinForm 动态添加-删除控件内存未释放

怎么用图表控件FineReport做图表

winform窗体 Treeview控件子节点动态添加图片

winform如何用Timer实现将时间动态显示在窗体上?