示例#1
0
    private void LoadList(string[] data)
    {
        if (PanelBox == null)
        {
            return;
        }

        foreach (Control ctrl in PanelBox.Controls)
        {
            ctrl.Dispose();
        }
        PanelBox.Controls.Clear();

        CheckBox lastBox = new CheckBox();

        lastBox.Location = new Point(6, 6);
        lastBox.AutoSize = true;
        lastBox.Text     = data[1].Replace("•  ", "").Replace(Form1.CheckMark, "").Trim();

        if (data[1].StartsWith(Form1.CheckMark) == true)
        {
            lastBox.Checked = true;
            lastBox.Enabled = false;
            //lastBox.Font = new Font(lastBox.Font, FontStyle.Strikeout);
        }
        else
        {
            lastBox.Checked = false;
            lastBox.Enabled = true;
        }
        lastBox.CheckedChanged += box_CheckedChanged;
        lastBox.KeyDown        += Form1_KeyDown;
        lastBox.KeyUp          += Form1_KeyUp;

        PanelBox.Controls.Add(lastBox);

        for (int i = 2; i < data.Length; i++)
        {
            CheckBox box = new CheckBox();
            box.Location = new Point(6, (lastBox.Location.Y + lastBox.Size.Height) + 3);
            box.AutoSize = true;
            box.Text     = data[i].Replace("•  ", "").Replace(Form1.CheckMark, "").Trim();

            if (data[i].StartsWith(Form1.CheckMark) == true)
            {
                box.Checked = true;
                box.Enabled = false;
                //box.Font = new Font(box.Font, FontStyle.Strikeout);
            }
            else
            {
                box.Checked = false;
                box.Enabled = true;
            }
            box.CheckedChanged += box_CheckedChanged;
            box.KeyDown        += Form1_KeyDown;
            box.KeyUp          += Form1_KeyUp;

            PanelBox.Controls.Add(box);

            lastBox = box;
        }

        PanelBox.UpdateSize();
    }