winform用户控件、timer控件、三级联动

用户控件:

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

使用方法:在项目上右键、添加、用户控件,之后用户控件的编辑与普通容器控件类似。

如果要在后台往窗体中添加,将其实例化,然后添加到想要添加的容器的Control集合中。

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";
        }

控件联动绑定地区

实体类

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5
 6 namespace WindowsFormsApplication2
 7 {
 8     public class China
 9     {
10         private string _AreaCode;
11
12         public string AreaCode
13         {
14             get { return _AreaCode; }
15             set { _AreaCode = value; }
16         }
17         private string _AreaName;
18
19         public string AreaName
20         {
21             get { return _AreaName; }
22             set { _AreaName = value; }
23         }
24         private string _ParentAreaCode;
25
26         public string ParentAreaCode
27         {
28             get { return _ParentAreaCode; }
29             set { _ParentAreaCode = value; }
30         }
31
32     }
33 }

数据操作类:

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Data.SqlClient;
 4 using System.Linq;
 5 using System.Text;
 6
 7 namespace WindowsFormsApplication2
 8 {
 9     public class ChinaData
10     {
11         SqlConnection conn = null;
12         SqlCommand cmd = null;
13
14         public ChinaData()
15         {
16             conn = new SqlConnection("server=.;database=Data0216;user=sa;pwd=123");
17             cmd = conn.CreateCommand();
18         }
19
20         //通过一个父级编号,查询该父级编号对应的地区,放到一个集合中去。
21         public List<China> Select(string pcode)
22         {
23             List<China> clist = new List<China>();
24             cmd.CommandText = "select *from ChinaStates where ParentAreaCode = @a";
25             cmd.Parameters.Clear();
26             cmd.Parameters.AddWithValue("@a", pcode);
27             conn.Open();
28             SqlDataReader dr = cmd.ExecuteReader();
29             while (dr.Read())
30             {
31                 China c = new China();
32                 c.AreaCode = dr[0].ToString();
33                 c.AreaName = dr[1].ToString();
34                 c.ParentAreaCode = dr[2].ToString();
35
36                 clist.Add(c);
37             }
38             conn.Close();
39             return clist;
40         }
41     }
42 }

关闭提示 关闭

确 认 取 消

时间: 2024-10-06 00:07:13

winform用户控件、timer控件、三级联动的相关文章

购物车和用户交互,显示省市县三级联动的选择

购物车 购物车 功能要求: 要求用户输入总资产,例如:2000 显示商品列表,让用户根据序号选择商品,加入购物车 购买,如果商品总额大于总资产,提示账户余额不足,否则,购买成功. 附加:可充值.某商品移除购物车 asset_all = 0 m1 = input('请输入金额:') mon_all = int(m1) goods = [ {"name": "电脑", "price": 1999}, {"name": "

Python实现用户交互,显示省市县三级联动的选择

题目:Python实现用户交互,显示省市县三级联动的选择 代码: dic = { "江西": { "萍乡": ["安源", "彭高", "上栗"], "新余": ["良山", "新钢", "兴安岭"], }, "北京": { "大兴区": ["礼贤镇", "魏

winform中如何使用timer控件实现欢迎(初始加载)窗口

第一步.新建窗体项目命名为:TestWelcomeFrm,如下图: 第二步.在新项目中,增加欢迎窗口,命名为WelFrm,整个项目目录如下: 第三步.修改program.cs中启动代码如下: WelFrm welFrm = new WelFrm(); if (welFrm.ShowDialog() == DialogResult.OK) { Application.Run(new ManiFrm()); } 第四步.修改welFrm窗口,增加Timer触发器控件,并设置其触发事件为:timer1

11 用户交互,显示省市县三级联动的选择

dict = {    "河北": {        "石家庄":{"晋州市","平山县","元氏"},        "邯郸": {"永年","涉县","磁县"},        },    "河南": {        "郑州": {"新郑","荥阳&qu

day01课程回顾,数据类型,(用户登录限制登录三次,购物车,省市县三级联动)

Day01 Python的分类 Cpython:代码àc字节码->机器码   一行一行的编译执行 Pypy:   代码àc字节码->机器码   全部转换完再执行 其他python  代码-->其他字节码-->机器码 Python的执行 Windows:C:\Python35\python.exe    D:\1.txt(python可执行文件路径---解释器   执行文件) Linux:可以在文件的头部写#!/usr/bin/python    python安装路径(用命令wher

利用select实现年月日三级联动的日期选择效果

× 目录 [1]演示 [2]规划 [3]结构生成[4]算法处理 前面的话 关于select控件,可能年月日三级联动的日期选择效果是最常见的应用了.本文是选择框脚本的实践,下面将对日期选择效果进行详细介绍 演示 规划 默认情况下,年.月.日分别由3个select控件组成,id分别为sel1,sel2,sel3.它们且所包含的option[0]的值,分别为'年'.'月'.'日' 年份范围为1900-2100,月份范围为1-12,天的范围为1-31 年份范围.月份范围是不变的.而天的范围根据实际日期的

显示省、市、县三级联动的选择

本文主要是实现:用户交互,显示省市县三级联动的选择 代码: #!/usr/bin/env python# -*- coding:utf-8 -*-# author by lh dic = { '河北': { '石家庄': ['鹿泉', '藁城', '元氏'], '邯郸': ['永年', '涉县', '磁县'], }, '河南': { '郑州':['中原区','二七区','金水区'], '开封':['龙亭区','鼓楼区','禹王台区'] }, '山西': { '太原':['迎泽区','杏花岭区',

WinForm Timer控件,三级联动[省,市,区]

Timer控件: 组件中的最后一个控件,功能是可以根据用户自定义的时间间隔来触发时间,不会印象窗体本身的其他事件进行. 属性: Enable  设置控件是否启用 Interval  设置事件的频率,以毫秒为单位 事件只有一个:Tick事件 例:使用timer控件获取当前时间并即时变动 private void timer1_Tick(object sender, EventArgs e) { label1.Text = DateTime.Now.ToString("yyyy年MM月dd日hh时m

WinForm用户控件、动态创建添加控件、timer控件--2016年12月12日

好文要顶 关注我 收藏该文 徐淳 关注 - 1 粉丝 - 3 0 0 用户控件: 通过布局将多个控件整合为一个控件,根据自己的需要进行修改,可对用户控件内的所有控件及控件属性进行修改使用 动态创建添加控件: 1 //定义控件类型 2 Button btn = new Button(); 3 //控件名称……等属性,也可以直接绑定各种事件 4 btn.Name = "mybutton" + i.ToString(); 5 //添加到窗体 this 可以替换为 容器控件 6 this.Co