【问题标题】:Insert specific elements in ASP:GridView在 ASP:GridView 中插入特定元素
【发布时间】:2021-05-25 00:44:52
【问题描述】:

我对 GridView 组件有一些问题。我的任务是从一个名为 book 的类中插入数据到 gridview 中,该类的页数大于 100。类:

    public class Knjiga {
     public string nazivKnjige { get; set; }
     public string imeAutora { get; set; }
     public int brStr { get; set; }
     public int ID { get; set; }

     public Knjiga(string naziv, string ime, int broj, int id) {
       nazivKnjige = naziv;
       imeAutora = ime;
       brStr = broj;
       ID = id;
     }
  }

我尝试这样的事情:

     List<Knjiga> biblioteka = new List<Knjiga>() { 
       new Knjiga("Mali Princ", "Hans Kristiansen Andersen", 355, 009),
       new Knjiga("Na Drini cuprija", "Ivo Andric", 100, 088),
       new Knjiga("Starac i more", "Ernest Hemingvej", 67, 033),
       new Knjiga("Covek posle rata", "Dusan Vasiljev", 255, 011),
       new Knjiga("Gradinar", "Rabindranat Tagore", 125, 077)
     };

protected void GridView1_SelectedIndexChanging(object sender, GridViewSelectEventArgs e)
{
    for (int i = 0; i < biblioteka.Count; i++)
    {
        if (biblioteka[i].brStr > 100)
        {
            GridView1.DataSource = biblioteka;
            GridView1.DataBind();
        }
    }
}


protected void Button1_Click(object sender, EventArgs e)
{
    for (int i = 0; i < biblioteka.Count; i++)
    {
        if (biblioteka[i].brStr > 100)
        {
            GridView1.DataSource = biblioteka;
            GridView1.DataBind();
        }
    }
}

但是当我开始一个项目时,所有数据都插入到gridview中,不管它的页数是否超过100。有谁知道如何只插入那些页数大于100的对象??

【问题讨论】:

  • 逐行浏览您的代码。您会注意到您设置数据源并重新绑定您的gridview 数千次,以在bib​​lioteka 中的整个对象集合。相反,您需要创建一个较小的集合来绑定。

标签: c# asp.net class button gridview


【解决方案1】:
  1. 在将数据绑定到网格视图之前,请根据您的业务准备数据源。
  2. 您正在多次绑定相同的数据,因为数据绑定逻辑存在于 for 循环中

【讨论】:

    猜你喜欢
    • 2020-03-02
    • 2022-10-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-11-20
    • 1970-01-01
    • 2012-09-21
    相关资源
    最近更新 更多