zoukankan      html  css  js  c++  java
  • winform用户控件、动态创建添加控件、timer控件、控件联动

     用户控件:(1)

    相当于自定义的一个panel 里面可以放各种其他控件,并可以在后台一下调用整个此自定义控件。

    使用方法:在项目上右键、添加、用户控件,之后用户控件的编辑与普通容器控件类似。如果要在后台往窗体中添加,

      将其实例化,然后添加到想要添加的容器的Control集合中。

    动态创建添加控件:

    配合上面的用户控件,实现类似QQ界面的打开自动加载好友昵称和签名

    复制代码
     public Form1()
            {
                InitializeComponent();
    
                //将当前登陆的账号的全部好友信息取出来
                List<App_Code.haoyou> hhlist = new haoyouData().Select(label1.Text);
    
    
                //动态创建好友用户控件,添加到容器中去
                for (int i = 0; i < hhlist.Count; i++)
                {
                    haoyou hy = new haoyou();
                    hy.label1.Text = hhlist[i].Fnickname;
                    hy.label2.Text = hhlist[i].Fcontent;
    
                    flowLayoutPanel1.Controls.Add(hy);
                }
            }
    复制代码

    timer控件:

    组件中的最后一个控件,功能是可以根据用户自定义的时间间隔来触发时间,不会印象窗体本身的其他事件进行。

    属性:

      Enable  设置控件是否启用

      Interval  设置事件的频率,以毫秒为单位

    事件只有一个:Tick事件

    例:使用timer控件获取当前时间并即时变动

    private void timer1_Tick(object sender, EventArgs e)
            {
                label1.Text = DateTime.Now.ToString("yyyy年MM月dd日hh时mm分ss秒");
            }

    控件联动:

    类似地区选择,当选的某个省份,后面的下拉框相对变成对应省份的区县

    复制代码
    public Form2()
            {
                InitializeComponent();
    
                //绑定省
                comboBox1.DataSource = new ChinaData().Select("0001");
                comboBox1.DisplayMember = "AreaName";
                comboBox1.ValueMember = "AreaCode";
    
                //绑定市
                comboBox2.DataSource = new ChinaData().Select(comboBox1.SelectedValue.ToString());
                comboBox2.DisplayMember = "AreaName";
                comboBox2.ValueMember = "AreaCode";
    
                //绑定区县
                comboBox3.DataSource = new ChinaData().Select(comboBox2.SelectedValue.ToString());
                comboBox3.DisplayMember = "AreaName";
                comboBox3.ValueMember = "AreaCode";
    
            }
    
            private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
            {
                //绑定市
                comboBox2.DataSource = new ChinaData().Select(comboBox1.SelectedValue.ToString());
                comboBox2.DisplayMember = "AreaName";
                comboBox2.ValueMember = "AreaCode";
            }
    
            private void comboBox2_SelectedIndexChanged(object sender, EventArgs e)
            {
                //绑定区县
                comboBox3.DataSource = new ChinaData().Select(comboBox2.SelectedValue.ToString());
                comboBox3.DisplayMember = "AreaName";
                comboBox3.ValueMember = "AreaCode";
            }
    复制代码

     

  • 相关阅读:
    WCF、Net remoting、Web service概念及区别
    新浪微博技术架构分析
    谈SOA和云的分层架构
    开发人员眼中最好的代码编辑器是什么?
    调试脚本,远离alert
    struts2与cookie实现自动登录和验证码验证
    把旧的项目改变名称重新部署到tomcat下发现项目名称还是原来的项目名称,解决方案
    myeclipse2014 安装maven3.3.9和mave配置本地仓库
    mysql在表的某一位置增加一列、删除一列、修改列名
    Java实现对cookie的增删改查
  • 原文地址:https://www.cnblogs.com/1030351096zzz/p/6165678.html
Copyright © 2011-2022 走看看