[英]Use only list/collection to store data locally on webpage
我使用此代碼僅獲得1條記錄,但我想在頁面上顯示多條記錄。 我在頁面上顯示3列: id
, name
和lastname
。 我該怎么做?
背后的代碼:
protected List<Class1> GetClass1()
{
Class1 uinfo = new Class1();
uinfo.ID = Convert.ToInt16(TextBox1.Text);
uinfo.Name = TextBox2.Text;
uinfo.LastName = TextBox3.Text;
data.Add(uinfo);
return data;
}
protected void BindUserDetails()
{
data = GetClass1();
GridView1.DataSource = data;
GridView1.DataBind();
}
類文件:
public class Class1
{
Int16 id;
string name = string.Empty;
string lastname = string.Empty;
public Int16 ID
{
get { return id; }
set { id = value; }
}
public string Name
{
get { return name; }
set { name = value; }
}
public string LastName
{
get { return lastname; }
set { lastname = value; }
}
}
我為您提供了一種解決方案。 這只是一個示例實現。 請根據您的要求進行修改。
編碼 :
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.ComponentModel;
namespace BindingListSample
{
public partial class _Default : System.Web.UI.Page
{
static List<Employee> bindingL = new List<Employee>();
protected void Btn_Click(object sender, EventArgs e)
{
bindingL.Add(new Employee { Name = TxtName.Text });
GrvSample.DataSource = bindingL;
GrvSample.DataBind();
}
}
public class Employee
{
public string Name { get; set; }
}
}
問題是您需要對列表使用static。 使用static時,您可以存儲在應用程序關閉之前插入的值。 請參閱靜態關鍵字以獲取更多說明。
這只是我解決這種情況的方法。
希望這可以幫助
`List<Class1> data = new List<Class1>();
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
}
if (Session["test"] != null)
{
data = Session["test"] as List<Class1>;
}
}
protected void Button1_Click(object sender, EventArgs e)
{
Class1 cl = new Class1 { ID = Convert.ToInt16(TextBox1.Text), Name = TextBox2.Text, LastName = TextBox3.Text };
data.Add(cl);
Session["test"] = data;
dataBind();
}
protected void dataBind()
{
GridView1.DataSource = data;
GridView1.DataBind();
}
}
}`
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.