0

我想知道如果我需要在类中声明 1000 多个控件对象,那么如何声明它。我有如下课程:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;
using System.Configuration;

namespace FinApps
{
    public partial class Form1 : Form
    {   
    //Global Area Of Class
    // Maximum Limit of Declaration is 1000-

        private FinAppsUserControl.FinAppsUserControl side1; //global object of control

        public Form1()
        {
            side1 = new FinAppsUserControl.FinAppsUserControl(); //Initialization
            InitializeComponent();

            this.panel2.Controls.Add(side1);

        }
    }
}

如果我要求在 form1 类的全局区域中声明 1000 多个全局控件对象,如上述,那么如何实现呢?

4

1 回答 1

1

您可以轻松地声明它:

List<Control> _controls = new List<Control>();

// in Load method (pseudocode)
//SuspendLayout
//add 1000+ controls in a loop
//ResumeLayout

但是你做错了什么。如果您可以将控件拆分为可重用的组,请使用 UserControl 封装一小部分功能。你必须使用WinForms吗?在 WPF 中使用 DataTemplates 相对容易做到这一点。

请重新考虑您想要实现的目标,控制数量会为本地化、维护等带来重大问题。

于 2012-11-15T12:45:09.727 回答