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 を使用する必要がありますか? DataTemplates を使用して、WPF でこれを行うのは比較的簡単です。

達成したいことを再考してください。コントロールの量がローカリゼーション、メンテナンスなどに重大な問題をもたらします。

于 2012-11-15T12:45:09.727 に答える