使用arraylist asp.net/c绑定gridview#
我已经创建了一个网格视图,我可以用数组列表绑定该网格视图列吗 如果可能的话,请你写一个示例代码使用arraylist asp.net/c绑定gridview#,gridview,Gridview,我已经创建了一个网格视图,我可以用数组列表绑定该网格视图列吗 如果可能的话,请你写一个示例代码 提前谢谢你是的,这是可能的。您必须在网格视图中指定列,根据您的需要和ArrayList的内容将它们绑定到某个表达式(您在其中包含什么类型的对象?),然后只需键入代码: myGrid.DataSource = myArrayList; myGrid.Databind(); 是的,这是可能的。您必须在网格视图中指定列,根据您的需要和ArrayList的内容将它们绑定到某个表达式(您在其中包含什么类型的对
提前谢谢你是的,这是可能的。您必须在网格视图中指定列,根据您的需要和ArrayList的内容将它们绑定到某个表达式(您在其中包含什么类型的对象?),然后只需键入代码:
myGrid.DataSource = myArrayList;
myGrid.Databind();
是的,这是可能的。您必须在网格视图中指定列,根据您的需要和ArrayList的内容将它们绑定到某个表达式(您在其中包含什么类型的对象?),然后只需键入代码:
myGrid.DataSource = myArrayList;
myGrid.Databind();
创建ArrayList之后,只需将ArrayList添加到datatable中,并将datatable绑定到Gridview。然后在设计页面中,您提到AutoGenerateColumns属性为“true” 如以下代码所示: 在设计页面中:
<asp:GridView ID="gvarray" runat="server" Width="328px">
<Columns>
<asp:TemplateField HeaderText="Select One">
<ItemTemplate>
<asp:Label ID = "rdoday" runat = "server" text = '<%# DataBinder.Eval (Container.DataItem, "Item") %>' />
</ItemTemplate>
</asp:TemplateField>
</Columns>
<asp:TemplateField HeaderText="User ID">
<ItemTemplate>
<asp:Label ID="lblDailyRunNo" runat="server" Text='<%# Eval("UserID") %>' />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="UserName">
<ItemTemplate>
<asp:Label ID="lblAreaNo" runat="server" Text='<%# Eval("Username") %>' />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Mobile Number">
<ItemTemplate>
<asp:Label ID="lblSalespersonName" runat="server" Text='<%# Eval("MobileNo") %>' />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Address">
<ItemTemplate>
<asp:Label ID="lblStatus" runat="server" Text='<%# Eval("Address") %>' />
</ItemTemplate>
</asp:TemplateField>
在代码隐藏中:
ArrayList Array_L = new ArrayList();
Array_L.Add("One");
Array_L.Add("two");
Array_L.Add(2);
DataTable dt = new DataTable();
dt.Columns.Add("Name");
for (int i = 0; i < Array_L .Count();i++)
{
dt.Rows.Add();
dt.Rows[i]["Name"] = Array_L [i].ToString();
}
gvarray.DataSource = dt;
gvarray.DataBind();
ArrayList数组_L=new ArrayList();
数组_L.添加(“一”);
数组加上(“两个”);
数组添加(2);
DataTable dt=新的DataTable();
dt.列。添加(“名称”);
对于(int i=0;i
创建ArrayList后,只需将ArrayList添加到datatable中,并将datatable绑定到Gridview。然后在设计页面中,您提到AutoGenerateColumns属性为“true”
如以下代码所示:
在设计页面中:
<asp:GridView ID="gvarray" runat="server" Width="328px">
<Columns>
<asp:TemplateField HeaderText="Select One">
<ItemTemplate>
<asp:Label ID = "rdoday" runat = "server" text = '<%# DataBinder.Eval (Container.DataItem, "Item") %>' />
</ItemTemplate>
</asp:TemplateField>
</Columns>
<asp:TemplateField HeaderText="User ID">
<ItemTemplate>
<asp:Label ID="lblDailyRunNo" runat="server" Text='<%# Eval("UserID") %>' />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="UserName">
<ItemTemplate>
<asp:Label ID="lblAreaNo" runat="server" Text='<%# Eval("Username") %>' />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Mobile Number">
<ItemTemplate>
<asp:Label ID="lblSalespersonName" runat="server" Text='<%# Eval("MobileNo") %>' />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Address">
<ItemTemplate>
<asp:Label ID="lblStatus" runat="server" Text='<%# Eval("Address") %>' />
</ItemTemplate>
</asp:TemplateField>
在代码隐藏中:
ArrayList Array_L = new ArrayList();
Array_L.Add("One");
Array_L.Add("two");
Array_L.Add(2);
DataTable dt = new DataTable();
dt.Columns.Add("Name");
for (int i = 0; i < Array_L .Count();i++)
{
dt.Rows.Add();
dt.Rows[i]["Name"] = Array_L [i].ToString();
}
gvarray.DataSource = dt;
gvarray.DataBind();
ArrayList数组_L=new ArrayList();
数组_L.添加(“一”);
数组加上(“两个”);
数组添加(2);
DataTable dt=新的DataTable();
dt.列。添加(“名称”);
对于(int i=0;i
您可以创建一个新的ArrayList以从SqlDataSource获取所有数据。然后,可以使用数据表将ArrayList中的数据插入网格视图的指定列和行中
以下是代码隐藏文件:
ArrayList myList = sampleController.getDataFromTable();
DataTable dataTable = new DataTable();
DataColumn dataColumn;
dataColumn = new DataColumn("UserID");
dataTable.Columns.Add(dataColumn);
dataColumn = new DataColumn("Username");
dataTable.Columns.Add(dataColumn);
dataColumn = new DataColumn("MobileNo");
dataTable.Columns.Add(dataColumn);
dataColumn = new DataColumn("Address");
dataTable.Columns.Add(dataColumn);
foreach (object str in myList)
{
Customer customer= new Customer();
customer= (Customer)str;
DataRow dataRow = dataTable.NewRow();
dataRow[0] = customer.DailyRunNo;
dataRow[1] = customer.Area.Name;
dataRow[2] = customer.Employee.EmployeeName;
dataRow[3] = customer.SalStatus;
dataTable.Rows.Add(dataRow);
}
gvCustomer.DataSource = dataTable;
gvCustomer.DataBind();//Bind datatable
以下内容在ASPX设计页面中:
<asp:GridView ID="gvarray" runat="server" Width="328px">
<Columns>
<asp:TemplateField HeaderText="Select One">
<ItemTemplate>
<asp:Label ID = "rdoday" runat = "server" text = '<%# DataBinder.Eval (Container.DataItem, "Item") %>' />
</ItemTemplate>
</asp:TemplateField>
</Columns>
<asp:TemplateField HeaderText="User ID">
<ItemTemplate>
<asp:Label ID="lblDailyRunNo" runat="server" Text='<%# Eval("UserID") %>' />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="UserName">
<ItemTemplate>
<asp:Label ID="lblAreaNo" runat="server" Text='<%# Eval("Username") %>' />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Mobile Number">
<ItemTemplate>
<asp:Label ID="lblSalespersonName" runat="server" Text='<%# Eval("MobileNo") %>' />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Address">
<ItemTemplate>
<asp:Label ID="lblStatus" runat="server" Text='<%# Eval("Address") %>' />
</ItemTemplate>
</asp:TemplateField>
您可以创建一个新的ArrayList以从SqlDataSource获取所有数据。然后,可以使用数据表将ArrayList中的数据插入网格视图的指定列和行中 以下是代码隐藏文件:
ArrayList myList = sampleController.getDataFromTable();
DataTable dataTable = new DataTable();
DataColumn dataColumn;
dataColumn = new DataColumn("UserID");
dataTable.Columns.Add(dataColumn);
dataColumn = new DataColumn("Username");
dataTable.Columns.Add(dataColumn);
dataColumn = new DataColumn("MobileNo");
dataTable.Columns.Add(dataColumn);
dataColumn = new DataColumn("Address");
dataTable.Columns.Add(dataColumn);
foreach (object str in myList)
{
Customer customer= new Customer();
customer= (Customer)str;
DataRow dataRow = dataTable.NewRow();
dataRow[0] = customer.DailyRunNo;
dataRow[1] = customer.Area.Name;
dataRow[2] = customer.Employee.EmployeeName;
dataRow[3] = customer.SalStatus;
dataTable.Rows.Add(dataRow);
}
gvCustomer.DataSource = dataTable;
gvCustomer.DataBind();//Bind datatable
以下内容在ASPX设计页面中:
<asp:GridView ID="gvarray" runat="server" Width="328px">
<Columns>
<asp:TemplateField HeaderText="Select One">
<ItemTemplate>
<asp:Label ID = "rdoday" runat = "server" text = '<%# DataBinder.Eval (Container.DataItem, "Item") %>' />
</ItemTemplate>
</asp:TemplateField>
</Columns>
<asp:TemplateField HeaderText="User ID">
<ItemTemplate>
<asp:Label ID="lblDailyRunNo" runat="server" Text='<%# Eval("UserID") %>' />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="UserName">
<ItemTemplate>
<asp:Label ID="lblAreaNo" runat="server" Text='<%# Eval("Username") %>' />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Mobile Number">
<ItemTemplate>
<asp:Label ID="lblSalespersonName" runat="server" Text='<%# Eval("MobileNo") %>' />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Address">
<ItemTemplate>
<asp:Label ID="lblStatus" runat="server" Text='<%# Eval("Address") %>' />
</ItemTemplate>
</asp:TemplateField>
当要绑定的数据是表格结构时,使用ArrayList是不符合逻辑的。当数据需要与下拉列表或ListView控件绑定时,可以使用ArrayList 若您想将数据绑定到gridview/datalist/datalist控件,那个么更好的选择应该是使用DataTable/Dataset,或者可以使用LIST ex:LIST 这里有一个使用gridview的Datatable示例
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.IO;
using System.Data.OleDb;
using System.Collections;
namespace TestApp
{
public partial class MyWebPage: System.Web.UI.Page
{
static string GetConnectionString()
{
return ConfigurationManager.ConnectionStrings["myConnString"].ConnectionString;
}
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
BindData();
}
}
private void BindData()
{
string connstring = GetConnectionString();
using(SqlConnection cn = new SqlConnection())
{
string query = "your sql query";
SqlDataAdapter da = new SqlDataAdapter(query,cn);
cn.Open();
DataTable dtMyTable = new DataTable();
da.Fill(dtMyTable);
GridView1.DataSource = dtMyTable;
GridView1.DataBind();
}
}
}
}
当要绑定的数据是表格结构时,使用ArrayList是不合逻辑的。当数据需要与下拉列表或ListView控件绑定时,可以使用ArrayList 若您想将数据绑定到gridview/datalist/datalist控件,那个么更好的选择应该是使用DataTable/Dataset,或者可以使用LIST ex:LIST 这里有一个使用gridview的Datatable示例
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.IO;
using System.Data.OleDb;
using System.Collections;
namespace TestApp
{
public partial class MyWebPage: System.Web.UI.Page
{
static string GetConnectionString()
{
return ConfigurationManager.ConnectionStrings["myConnString"].ConnectionString;
}
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
BindData();
}
}
private void BindData()
{
string connstring = GetConnectionString();
using(SqlConnection cn = new SqlConnection())
{
string query = "your sql query";
SqlDataAdapter da = new SqlDataAdapter(query,cn);
cn.Open();
DataTable dtMyTable = new DataTable();
da.Fill(dtMyTable);
GridView1.DataSource = dtMyTable;
GridView1.DataBind();
}
}
}
}
我刚刚在arraylist中列出了字符串。绑定到表达式是什么意思?你能再解释一下吗?ThanksGridview由Microsoft提供的惊人链接我刚刚在arraylist中列出了字符串列表。绑定到表达式是什么意思?你能再解释一下吗?感谢Microsoft提供的RidView惊人链接