📜  如何在C#中设置ListBox的边框样式?

📅  最后修改于: 2021-05-29 22:03:20             🧑  作者: Mango

在Windows窗体中,ListBox控件用于显示列表中的多个元素,用户可以从中选择一个或多个元素,并且这些元素通常显示在多列中。在ListBox中,允许使用ListBox的BorderStyle属性设置ListBox边框的样式,这会使ListBox更具吸引力。您可以通过两种不同的方式设置此属性:

1.设计时:这是设置ListBox中内容边框样式的最简单方法,如以下步骤所示:

  • 第1步:创建一个Windows窗体,如下图所示:
    Visual Studio->文件->新建->项目-> WindowsFormApp
  • 步骤2:将ListBox控件从工具箱中拖放到Windows窗体上。您可以根据需要在Windows窗体上的任何位置放置一个ListBox控件。
  • 步骤3:拖放之后,您将转到ListBox控件的属性以设置ListBox边框的样式。

    输出:

2.运行时:比上面的方法有些棘手。在此方法中,可以在给定语法的帮助下以编程方式设置ListBox控件的边框样式:

public System.Windows.Forms.BorderStyle BorderStyle { get; set; }

在这里,BorderStyle表示BorderStyle的值,值为:

  • 固定3D:用于3D边框。
  • FixedSingle:用于单线边框。
  • 无:无边框。

它会抛出一个InvalidEnumArgumentException如果此属性的值不属于边框。以下步骤显示如何动态设置ListBox的边框样式:

  • 步骤1:使用ListBox类提供的ListBox()构造函数创建一个列表框。
    // Creating ListBox using ListBox class constructor
    ListBox mylist = new ListBox();
    
  • 步骤2:创建ListBox之后,设置ListBox类提供的ListBox的BorderStyle属性。
    // Setting the BorderStyle of the ListBox
    mylist.BorderStyle = BorderStyle.Fixed3D;
    
  • 步骤3:最后使用Add()方法将此ListBox控件添加到窗体。
    // Add this ListBox to the form
    this.Controls.Add(mylist);
    

    例子:

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows.Forms;
      
    namespace WindowsFormsApp26 {
      
    public partial class Form1 : Form {
      
        public Form1()
        {
            InitializeComponent();
        }
      
        private void Form1_Load(object sender, EventArgs e)
        {
            // Creating and setting 
            // the properties of ListBox
            ListBox mylist = new ListBox();
            mylist.Location = new Point(287, 109);
            mylist.Size = new Size(120, 95);
            mylist.BorderStyle = BorderStyle.Fixed3D;
            mylist.Items.Add("Geeks");
            mylist.Items.Add("GFG");
            mylist.Items.Add("GeeksForGeeks");
            mylist.Items.Add("gfg");
      
            // Adding ListBox control to the form
            this.Controls.Add(mylist);
        }
    }
    }
    

    输出: