SSISO Community

갤러리정

CheckedListBox Demo 2

using  System;
using  System.Windows.Forms;
using  System.Drawing;
using  System.ComponentModel;
  
public  class  CheckedListBoxDemo:Form{
    CheckedListBox  FavLangs;
    GroupBox  grpControls;
    Button  AddValue;
    Button  EditValue;
    Button  DeleteValue;
    Button  ShowValues;
    TextBox  OldValue;
    TextBox  NewValue;
    Label  OldCaption;
    Label  NewCaption;
    CheckBox  chkAll;
  
    public  CheckedListBoxDemo(){
        grpControls=new  GroupBox();
        grpControls.Text="CheckedListBox  Demo";
  
        AddValue=new  Button();
        AddValue.Text="&Add";
        AddValue.Click+=new  EventHandler(Add_Click);
        
        EditValue=new  Button();
        EditValue.Text="&Edit";
        EditValue.Click+=new  EventHandler(Edit_Click);
        
        DeleteValue=new  Button();
        DeleteValue.Text="&Delete";
        DeleteValue.Click+=new  EventHandler(Delete_Click);
        
        ShowValues=new  Button();
        ShowValues.Text="&Show";
        //ShowValues.Click+=new  EventHandler(ShowValues_Click);
        ShowValues.Click+=new  EventHandler(Checked_Changed);
        
        OldValue=new  TextBox();
        OldValue.ReadOnly=true;
        NewValue=new  TextBox();
  
        OldCaption=new  Label();
        OldCaption.Text="Old  Value:";
        NewCaption=new  Label();
        NewCaption.Text="New  Value:";

        chkAll=new  CheckBox();
        chkAll.Text="Check/UnCheck  All";
        chkAll.CheckedChanged+=  new  EventHandler(Checked_Changed);
        chkAll.Width=175;
  
        OldCaption.Location=new  Point(15,15);
        PositionControl(OldCaption,OldValue,true);
        PositionControl(OldCaption,NewCaption,false);
        PositionControl(OldValue,NewValue,false);
        PositionControl(NewCaption,AddValue,false);
        PositionControl(AddValue,EditValue,true);
        PositionControl(EditValue,DeleteValue,true);
        PositionControl(DeleteValue,ShowValues,true);
        PositionControl(AddValue,chkAll,false);
  
        grpControls.Controls.AddRange(new  Control[]{OldCaption,OldValue,NewCaption,NewValue,AddValue,EditValue,DeleteValue,ShowValues,chkAll});
        grpControls.Size=new  Size(450,200);
  
        FavLangs=new  CheckedListBox();
        FavLangs.Location=new  Point(10,10);
        FavLangs.SelectedIndexChanged+=new  EventHandler(SelectedIndex_Changed);
  
        grpControls.Location=new  Point(FavLangs.Left+FavLangs.Width+20,FavLangs.Top);
        this.Controls.AddRange(new  Control[]{FavLangs,grpControls});
    }
  
    private  void  PositionControl(Control  source,Control  destination,bool  CanPlaceHorizontal)
    {
        if(CanPlaceHorizontal){
            destination.Location=new  Point(source.Left+source.Width+20,source.Top);
        }else{
            destination.Location=new  Point(source.Left,source.Top+source.Height+20);            
        }
    }
  
    private  void  Add_Click(object  sender,EventArgs  e){
        ((Button)sender).Text  =  "aaa";
        
        if(NewValue.Text.Trim()!=""){
            FavLangs.Items.Add(NewValue.Text);
        }else{
            MessageBox.Show("Enter  a  Value  to  Add");
        }
    }
  
    private  void  SelectedIndex_Changed(object  sender,EventArgs  e){
        OldValue.Text=FavLangs.Items[FavLangs.SelectedIndex].ToString();
    }
  
    private  void  Edit_Click(object  sender,EventArgs  e){
        if(FavLangs.SelectedIndex==-1){
            MessageBox.Show("Select  a  Item  to  Edit");
        }  else{
          if(NewValue.Text.Trim()!=""){
                FavLangs.Items[FavLangs.SelectedIndex]=NewValue.Text;
          }
            else
            {
                MessageBox.Show("Enter  a  Value  to  Edit");
            }                        
        }
    }
  
    private  void  Delete_Click(object  sender,EventArgs  e)
    {
        if(FavLangs.SelectedIndex!=-1)
        {
            FavLangs.Items.RemoveAt(FavLangs.SelectedIndex);
        }
        else
        {
            MessageBox.Show("Select  a  Item  to  Delete");
        }
    }
  
    private  void  ShowValues_Click(object  sender,EventArgs  e){
        string  SelectedValues="The  following  value(s)  are  Selected:\n"  +  new  String('-',48)  +  "\n";
        for(int  i=0;i<FavLangs.CheckedItems.Count;i++){
            SelectedValues+=FavLangs.CheckedItems[i].ToString()  +  "\n";
        }
        MessageBox.Show(SelectedValues);
    }
  
    private  void  Checked_Changed(object  sender,EventArgs  e){
            for(int  i=0;i<FavLangs.Items.Count;i++){
                    FavLangs.SetItemChecked(i,chkAll.Checked);
            }        
    }
  
    public  static  void  Main(){
            Application.Run(new  CheckedListBoxDemo());
    }
}

1315 view

4.0 stars