Winform回顾[2] ComboBox控件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Winform回顾[2] ComboBox控件相关的知识,希望对你有一定的参考价值。

ComboBox重要属性:【DropDownStyle】 获取或设置指定组合框样式的值。

下面仍然通过一个小程序来回顾:

 技术分享

代码如下:

using System;
using System.Windows.Forms;

namespace 日期选择器
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        //在程序加载的时候,添加年份
        private void Form1_Load(object sender, EventArgs e)
        {
            //获得当前的年份
            int year = DateTime.Now.Year;
            //添加年份
            for (int i = year; i >= 1949; i--)
            {
                cmbYear.Items.Add(i + "");
            }
        }

        //当年份发生改变的时候加载月份
        private void cmbYear_SelectedIndexChanged(object sender, EventArgs e)
        {
            //添加之前,应该先清理
            cmbMonth.Items.Clear();
            //添加
            for (int i = 1; i <= 12; i++)
            {
                cmbMonth.Items.Add(i + "");
            }
        }

        //当月份发生改变的时候,加载日子
        private void cmbMonth_SelectedIndexChanged(object sender, EventArgs e)
        {
            cmbDay.Items.Clear();

            //获得年份、月份
            string strYear = cmbYear.SelectedItem.ToString().Split(new char[] {  }, StringSplitOptions.RemoveEmptyEntries)[0];
            string strMonth = cmbMonth.SelectedItem.ToString().Split(new char[] {  }, StringSplitOptions.RemoveEmptyEntries)[0];
            //转为整型
            int year = Convert.ToInt32(strYear);
            int month = Convert.ToInt32(strMonth);

            //声明变量表示天数
            int days = 0;

            switch (month)
            {
                case 1:
                case 3:
                case 5:
                case 7:
                case 8:
                case 10:
                case 12:
                    days = 31;
                    break;
                case 2:
                    if (DateTime.IsLeapYear(year))  //判断闰年
                    {
                        days = 29;
                    }
                    else
                    {
                        days = 28;
                    }
                    break;
                default:
                    days = 30;
                    break;
            }

            for (int i = 1; i <= days; i++)
            {
                cmbDay.Items.Add(i + "");
            }
        }
    }
}

源代码链接:http://pan.baidu.com/s/1pL9eTsf 密码:wvts

 

以上是关于Winform回顾[2] ComboBox控件的主要内容,如果未能解决你的问题,请参考以下文章

C# winform 下拉列表控件(comboBox)

winForm中使用ComBoBOX控件。

C# Winform的comboBox控件下拉框怎样做一个多选?请大神指教!麻烦您给出相应代码!

WinForm多窗体间操作,ComboBox下拉菜单控件

WinForm 控件ComboBox数据绑定

关于C#winForm comboBox控件的SelectedValue属性