通过 NumericUpDown C# 设置限制列表框项目

Set limit ListBox items by NumericUpDown C#

我正在用 C# 开发一个 WinForms 应用程序,它通过 ADD 按钮将元素添加到列表框。 我需要做的是在应用程序处于 运行ning.

时使用 NumericUpDown 元素为此列表框设置项目限制

所以我的想法是,我 运行 应用程序,我 select 使用 NumericUpDown 对象的元素数量,并自动在我的 listBox 上设置项目数量限制,只允许添加更多如果我用 NumericUpDown 对象增加数字。 有人知道怎么做吗?

谢谢

假设您有 button1numericUpDown1listBox1 和一个名为 textBox1 的文本框来输入要添加到列表框的文本,下面是一个完整示例演示如何实现这一目标。您可以对其进行任何必要的更改以满足您的要求:

public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();

        numericUpDown1.Value = 3;
        numericUpDown1.Validating += NumericUpDown1_Validating;
        button1.Click += Button1_Click;
    }

    private void NumericUpDown1_Validating(object sender, CancelEventArgs e)
    {
        if (listBox1.Items.Count > numericUpDown1.Value)
        {
            MessageBox.Show(
                $"The list already has more than {numericUpDown1.Value} items.");
            e.Cancel = true;
        }
    }

    private void Button1_Click(object sender, EventArgs e)
    {
        if (listBox1.Items.Count < numericUpDown1.Value)
        {
            listBox1.Items.Add(textBox1.Text);
        }
        else
        {
            MessageBox.Show(
                $"The list has reached the limit of {numericUpDown1.Value} items.");
        }
    }
}

结果: