Мне нужно загрузить большое количество данных о растениях в схеме потока, когда я выбираю категорию данных,
Если я выберу категорию с более чем 12000 данных, потребуется больше времени для
загрузить данные в потоковое планирование, поэтому мне нужно загрузить данные на основе прокрутки потока.
protected void category_Click(object sender, EventArgs e)
{
Button category = sender as Button;
string s;
s = " ID: ";
s += category.Tag;
s += "\n Name: ";
s += category.Name.ToString();
PlantList_with_images(category.Tag.ToString());
}
Выше код помогает генерировать все категории в виде кнопки, пока я нажимаю на категорию, тогда данные, относящиеся к этой конкретной категории, должны быть загружены во второй поток
public void PlantList_with_images(string value)
{
flowLayoutPanelPlantList.Controls.Clear();
try
{
string expression;
string sql;
expression= " select [id],[code],[name] from [plantdetails] where categoryname ='" + value + "'";
Datatable dt = DataAccess.GetTable(sqlfetcher);
int currentImage = 0;
for (int i = 0; i < dt.Rows.Count; i++)
{
DataRow dataReader = dt.Rows[i];
Button b = new Button();
b.Tag = dataReader["name"].ToString();
b.Click += new EventHandler(b_Click_Plant);
string details = dataReader["code"].ToString() +
"\n Name: " + dataReader["name"].ToString();
b.Name = details;
ImageList il = new ImageList();
il.ColorDepth = ColorDepth.Depth32Bit;
il.TransparentColor = Color.Transparent;
il.ImageSize = new Size(58, 60);
il.Images.Add(Image.FromFile(img_directory + dataReader["imagename"]));
b.Image = il.Images[0];
b.Margin = new Padding(0, 0, 0, 0);
b.Size = new Size(190, 83);
//b.Text.PadRight(4);
b.Text += dataReader["code"].ToString();
b.Text += "\n" + dataReader["name"].ToString();
b.Font = new Font("Arial", 8, FontStyle.Bold, GraphicsUnit.Point);
b.TextAlign = ContentAlignment.MiddleLeft;
b.TextImageRelation = TextImageRelation.ImageBeforeText;
flowLayoutPanelPlantList.Controls.Add(b);
currentImage++;
}
}
catch //(Exception)
{
}
}
Приведенный выше код помогает загружать данные в поток данных, проблема в том, что, если я нажимаю на категорию с более чем 1000 или 2000 или более данными о заводе, она зависает и занимает больше времени для загрузки данных, иногда показывает, что не отвечает,
Пожалуйста, помогите мне решить эту проблему