winform 用戶控件、 動態創建添加控件、timer控件、控件聯動


用戶控件:

相當於一個Panel 可以把多個控件放在里面 組合為一個控件,方便使用和布局。

動態創建添加控件

可以在一個大容器里一次性放入多個控件

例:根據文本框中輸入的數字 給flowLayoutPanel1 添加多少個button

 public Form2(haoyou hao)
        {
            InitializeComponent();
            f = hao;
        }

        private void button1_Click(object sender, EventArgs e)
        {
            //先獲取用戶輸入的是幾
            int count = Convert.ToInt32(textBox1.Text);

            flowLayoutPanel1.Controls.Clear();
            //循環創建按鈕,然后添加到容器中
            for (int i = 1; i <= count; i++)
            {
                Button btn = new Button();
                btn.Text = i.ToString();

                flowLayoutPanel1.Controls.Add(btn);
            
            }


        }

timer控件

Timer控件主要會用到2個屬性一個是Enabled和Interval
Enabled主要是控制當前Timer控件是否可用
timer1.Enabled=false;不可用
timer1.Enabled=true;可用
timer1.Interval=1000;主要是設置timer2_Tick事件的時間,單位為毫秒

例一:到9:00提示去上廁所
把timer2.Interval=60000;//1分鍾

private void timer2_Tick(object sender, System.EventArgs e)
 {
    string cesuotime=DateTime.Now.DateTime.Now.ToShortTimeString();//得到現在的時間
    if(cesuotime.equles("9:00"))
      {
           timer1.Enabled=false;
           MessageBox.show("該去上廁所了");
            timer1.Enabled=true;//如果不先把enabled設置成false對話框會一直彈下去
      }
 }
View Code

例二:每2小時提示用戶看電腦時間已經很久了,需要休息了

把timer2.Interval=7200000;//7200秒

private void timer2_Tick(object sender, System.EventArgs e)
{
    timer1.Enabled=false;
    MessageBox.show("需要休息了,開機已經2小時了");
    timer1.Enabled=true;//如果不先把enabled設置成false對話框會一直彈下去
 }
View Code

控件聯動

通俗講就是一個控件的屬性變化引動另一控件也發生變化

例:使用3個comboBox選擇 省市區

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using WindowsFormsApplication2.App_Code;

namespace WindowsFormsApplication2
{
    public partial class Form2 : Form
    {
        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";
        }
    }
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM