2013年4月9日 星期二

combobox識別身分範例與item導入物件概念

下面簡單介紹combox中的基礎應用
在item屬性中分別 加入admin與user
在使用IF ELSE進行判斷用戶
下面範例

        private void btn_login_Click(object sender, EventArgs e)
        {
            //下面判斷如果選擇是一個叫"admin"的話true
            if (cbox_select.SelectedItem.ToString() == "admin")
            {
                MessageBox.Show(//如果是admin登陸則提示管理員登陸
                    "管理員登入", "提示!");
            }
            else//如果不是false
            {
                MessageBox.Show(//如果是user登陸則提示普通用戶登陸
                    "普通用戶登入", "提示!");
            }
        }
        private void Form1_Load(object sender, EventArgs e)
        {
            cbox_select.SelectedIndex = 0;//默認選擇combobox中的第一項
        }

防止用戶誤觸修改combobox中的內容,可設定DropDownStyle屬性中的DropDownList即可


由於顯示一般是字串物件,但item.add方法 可接受物件
而下拉式清單會呼叫item中每一個objecy中的字串方法
並顯示在combobox中
所以可以利用此特性 建立類別 再利用add加入新物件
下面修改後的範例

public partial class Frm_Main : Form
    {
        class ttest
        {
            //因為Items集合中的add方法接受"物件"
            //
            //用override重新定義ToString()
            //item會呼叫物件中的ToString()方法
            //而ToStrung()是一個方法
            //但是一旦執行ttest 遇到override ToString()就必須重新定義
            //利用OVERRIDE複寫基底的TOSTRING
            //當呼叫ttest類別時 呼叫字串 override會複寫ToString
            //而tostring 回傳一個字串"程式設計"給 Add
            public override string ToString()
            {
                return "程式設計";//建立字串方法 傳回"程式設計"
            }
        }
        public Frm_Main()
        {
            InitializeComponent();
        }
        private void btn_login_Click(object sender, EventArgs e)
        {
            //下面判斷如果選擇是一個叫"admin"的話true
            if (cbox_select.SelectedItem.ToString() == "admin")
            {
                MessageBox.Show(//如果是admin登陸則提示管理員登陸
                    "管理員登入", "提示!");
            }
            else//如果不是false
            {
                MessageBox.Show(//如果是user登陸則提示普通用戶登陸
                    "普通用戶登入", "提示!");
            }
        }
        private void Form1_Load(object sender, EventArgs e)
        {
            //ttest objectName = new ttest();
            //or
            //直接new
            cbox_select.Items.Add(new ttest());//加入新物件 
            cbox_select.SelectedIndex = 0;//默認選擇combobox中的第一項
        }

沒有留言:

張貼留言