Mega Code Archive

 
Categories / C# by API / System Windows Forms
 

ListBox ScrollAlwaysVisible

using System; using System.Drawing; using System.Windows.Forms; using System.Data; using System.Data.SqlClient; public class ListBoxSelectionMode : Form {   ListBox lb;   RadioButton rdoMultiExtended;   RadioButton rdoMultiSimple;   RadioButton rdoMultiOne;   TextBox txtTop;   Button btnTop;   public ListBoxSelectionMode()   {     int xSize, ySize;     Size = new Size(300,400);     lb = new ListBox();     lb.Parent = this;     lb.Location = new Point(10,10);     lb.Size = new Size(ClientSize.Width - 20, Height - 200);     lb.Anchor = AnchorStyles.Top | AnchorStyles.Left | AnchorStyles.Right | AnchorStyles.Bottom;     lb.BorderStyle = BorderStyle.Fixed3D;     lb.MultiColumn = true;     lb.ScrollAlwaysVisible = true;     GroupBox grpMulti = new GroupBox();     grpMulti.Parent = this;     grpMulti.Text = "MultiSelect";     grpMulti.Location = new Point(lb.Left, lb.Bottom + 25);     grpMulti.Anchor = AnchorStyles.Left | AnchorStyles.Bottom;     rdoMultiOne = new RadioButton();     rdoMultiOne.Parent = grpMulti;     rdoMultiOne.Text = "One";     rdoMultiOne.Tag = SelectionMode.One;     rdoMultiOne.Checked = true;     rdoMultiOne.Location = new Point(10,15);     rdoMultiOne.CheckedChanged += new System.EventHandler(rdoMulti_CheckedChanged);     rdoMultiSimple = new RadioButton();     rdoMultiSimple.Parent = grpMulti;     rdoMultiSimple.Text = "Multi-Simple";     rdoMultiSimple.Tag = SelectionMode.MultiSimple;     rdoMultiSimple.Location = new Point(10, rdoMultiOne.Bottom);     rdoMultiSimple.CheckedChanged += new System.EventHandler(rdoMulti_CheckedChanged);     rdoMultiExtended = new RadioButton();     rdoMultiExtended.Parent = grpMulti;     rdoMultiExtended.Text = "Multi-Extended";     rdoMultiExtended.Tag = SelectionMode.MultiExtended;     rdoMultiExtended.Location = new Point(10, rdoMultiSimple.Bottom);     rdoMultiExtended.CheckedChanged += new System.EventHandler(rdoMulti_CheckedChanged);     xSize = (int)(Font.Height * .75) * rdoMultiExtended.Text.Length;     ySize = ((int)rdoMultiOne.Height * 3) + 20;     grpMulti.Size = new Size(xSize, ySize);     Panel pnlTop = new Panel();     pnlTop.Parent = this;     pnlTop.Location = new Point(lb.Left, grpMulti.Bottom + 10);     pnlTop.Anchor = AnchorStyles.Left | AnchorStyles.Bottom;     Label lblTop = new Label();     lblTop.Parent = pnlTop;     lblTop.Text = "TopIndex: ";     xSize = ((int)(Font.Height * .5) * lblTop.Text.Length);     lblTop.Size = new Size(xSize, Font.Height + 10);     txtTop = new TextBox();     txtTop.Parent = pnlTop;     txtTop.Location = new Point(lblTop.Right, lblTop.Top);     txtTop.Text = lb.TopIndex.ToString();     txtTop.Size = new Size((int)(Font.Height * .75) * 3,                  Font.Height + 10);     btnTop = new Button();     btnTop.Parent = pnlTop;     btnTop.Text = "Update";     btnTop.Location = new Point(txtTop.Right + 10, txtTop.Top);     btnTop.Click += new System.EventHandler(btnTop_Click);     lb.Items.Add("12345");       lb.Items.Add("67890");             lb.Items.Add("7890");             lb.Items.Add("890");               }    static void Main()    {     Application.Run(new ListBoxSelectionMode());   }   private void rdoMulti_CheckedChanged(object sender, EventArgs e)   {     RadioButton rdo = (RadioButton)sender;     lb.SelectionMode = (SelectionMode)rdo.Tag;   }   private void btnTop_Click(object sender, EventArgs e)   {     txtTop.Text = lb.TopIndex.ToString();   } }