using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI.WebControls;
using System.Web.UI;
using System.Web.UI.HtmlControls;
//using System.Data;namespace WebApplication5
{
public class MyItemTemplate : System.Web.UI.ITemplate
{
public void InstantiateIn(System.Web.UI.Control container)
{
TableRow row = new TableRow();
for (int i = 0; i < datename.Count; i++)
{
row.Cells.Add(new TableCell() { ID = datename[i] + "a" });
switch (ucclass[i].ToString().Trim())
{
case "CheckBox":
CheckBox a = new CheckBox();
a.ID = datename[i];
row.Cells[i ].Controls.Add(a);
row.Cells[i].BackColor = System.Drawing.Color.Goldenrod; break;
case "Image":
Image image1 = new Image();
image1.ID = datename[i];
image1.Width = 133;
image1.Height = 100;
row.Cells[i].Controls.Add(image1);
row.Cells[i].BackColor = System.Drawing.Color.Goldenrod;
break;
case "Label":
Label label1 = new Label();
label1.ID = datename[i];
row.Cells[i].Controls.Add(label1);
row.Cells[i].BackColor = System.Drawing.Color.Goldenrod;
break;
case "TextBox":
TextBox textbox1 = new TextBox();
textbox1.ID = datename[i];
row.Cells[i].Controls.Add(textbox1);
row.Cells[i].BackColor = System.Drawing.Color.Goldenrod; break;
case "":
row.Cells[i].BackColor = System.Drawing.Color.Goldenrod;
break; }
}
row.DataBinding += new EventHandler(ph_DataBinding);
container.Controls.Add(row);
} void ph_DataBinding(object sender, EventArgs e)
{
TableRow ph = (TableRow)sender;
IDataItemContainer ri = (IDataItemContainer)ph.NamingContainer;
for (int i = 0; i < datename.Count; i++)
{
object itemValue = DataBinder.Eval(ri.DataItem, datename[i]);
switch (ucclass[i].ToString())
{
case "CheckBox":
((CheckBox)ph.FindControl(datename[i])).Checked = Convert.ToBoolean(itemValue.ToString());
break;
case "Image":
((Image)ph.FindControl(datename[i])).ImageUrl = itemValue.ToString().Trim();
break;
case "Label":
((Label)ph.FindControl(datename[i])).Text = itemValue.ToString().Trim();
break;
case "TextBox":
((TextBox)ph.FindControl(datename[i])).Text = itemValue.ToString().Trim();
break;
case "":
((TableCell)ph.FindControl(datename[i])).Text = itemValue.ToString();
break;
}
}
}
private List<string> _dataname;
public List<string> datename
{
set {
_dataname = value;
}
get
{
return _dataname;
}
}
private List<string> _ucclass;
public List<string> ucclass
{
set
{
_ucclass = value;
}
get
{
return _ucclass;
}
}
}}
代码,是listview itemtamplate 模板,只需输入绑定的数据字段名,和需要绑定控件类型就可自动生成。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
//using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;namespace WebApplication5
{
public class MyLayoutTemplate : System.Web.UI.ITemplate {
public void InstantiateIn(System.Web.UI.Control container)
{
Table t = new Table();
t.ID = "lvtbid";
t.BackColor = System.Drawing.Color.Blue;
t.CellPadding = 2;
t.CellSpacing = 2;
TableRow r = new TableRow();
List<string> hlist = myheader;
for (int i = 0; i < hlist.Count; i++)
{
r.Cells.Add(new TableCell() { Text = hlist[i] });
r.Cells[i].BackColor = System.Drawing.Color.DarkGreen;
}
t.Rows.Add(r);
TableRow itemPlaceholderRow = new TableRow(); Table itemPlaceholderTable = new Table();
itemPlaceholderTable.ID = "itemPlaceholder";
itemPlaceholderRow.Cells.Add(new TableCell());
itemPlaceholderRow.Cells[0].Controls.Add(itemPlaceholderTable); t.Rows.Add(itemPlaceholderRow);
container.Controls.Add(t);
}
private List<string> _myheader;
public List<string> myheader
{
set
{
_myheader = value;
}
get
{
return _myheader;
}
}
}
}
listview laouttemplate模板类,需要输入显示的字段头文件list<>就可以自动生成
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI.WebControls;
using System.Web.UI;
using System.Web.UI.HtmlControls;
//using System.Data;namespace WebApplication5
{
public class MyItemTemplate : System.Web.UI.ITemplate
{
public void InstantiateIn(System.Web.UI.Control container)
{
TableRow row = new TableRow();
for (int i = 0; i < datename.Count; i++)
{
row.Cells.Add(new TableCell() { ID = datename[i] + "a" });
switch (ucclass[i].ToString().Trim())
{
case "CheckBox":
CheckBox a = new CheckBox();
a.ID = datename[i];
row.Cells[i ].Controls.Add(a);
row.Cells[i].BackColor = System.Drawing.Color.Goldenrod; break;
case "Image":
Image image1 = new Image();
image1.ID = datename[i];
image1.Width = 133;
image1.Height = 100;
row.Cells[i].Controls.Add(image1);
row.Cells[i].BackColor = System.Drawing.Color.Goldenrod;
break;
case "Label":
Label label1 = new Label();
label1.ID = datename[i];
row.Cells[i].Controls.Add(label1);
row.Cells[i].BackColor = System.Drawing.Color.Goldenrod;
break;
case "TextBox":
TextBox textbox1 = new TextBox();
textbox1.ID = datename[i];
row.Cells[i].Controls.Add(textbox1);
row.Cells[i].BackColor = System.Drawing.Color.Goldenrod; break;
case "":
row.Cells[i].BackColor = System.Drawing.Color.Goldenrod;
break; }
}
row.DataBinding += new EventHandler(ph_DataBinding);
container.Controls.Add(row);
} void ph_DataBinding(object sender, EventArgs e)
{
TableRow ph = (TableRow)sender;
IDataItemContainer ri = (IDataItemContainer)ph.NamingContainer;
for (int i = 0; i < datename.Count; i++)
{
object itemValue = DataBinder.Eval(ri.DataItem, datename[i]);
switch (ucclass[i].ToString())
{
case "CheckBox":
((CheckBox)ph.FindControl(datename[i])).Checked = Convert.ToBoolean(itemValue.ToString());
break;
case "Image":
((Image)ph.FindControl(datename[i])).ImageUrl = itemValue.ToString().Trim();
break;
case "Label":
((Label)ph.FindControl(datename[i])).Text = itemValue.ToString().Trim();
break;
case "TextBox":
((TextBox)ph.FindControl(datename[i])).Text = itemValue.ToString().Trim();
break;
case "":
((TableCell)ph.FindControl(datename[i])).Text = itemValue.ToString();
break;
}
}
}
private List<string> _dataname;
public List<string> datename
{
set {
_dataname = value;
}
get
{
return _dataname;
}
}
private List<string> _ucclass;
public List<string> ucclass
{
set
{
_ucclass = value;
}
get
{
return _ucclass;
}
}
}}
代码,是listview itemtamplate 模板,只需输入绑定的数据字段名,和需要绑定控件类型就可自动生成。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
//using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;namespace WebApplication5
{
public class MyLayoutTemplate : System.Web.UI.ITemplate {
public void InstantiateIn(System.Web.UI.Control container)
{
Table t = new Table();
t.ID = "lvtbid";
t.BackColor = System.Drawing.Color.Blue;
t.CellPadding = 2;
t.CellSpacing = 2;
TableRow r = new TableRow();
List<string> hlist = myheader;
for (int i = 0; i < hlist.Count; i++)
{
r.Cells.Add(new TableCell() { Text = hlist[i] });
r.Cells[i].BackColor = System.Drawing.Color.DarkGreen;
}
t.Rows.Add(r);
TableRow itemPlaceholderRow = new TableRow(); Table itemPlaceholderTable = new Table();
itemPlaceholderTable.ID = "itemPlaceholder";
itemPlaceholderRow.Cells.Add(new TableCell());
itemPlaceholderRow.Cells[0].Controls.Add(itemPlaceholderTable); t.Rows.Add(itemPlaceholderRow);
container.Controls.Add(t);
}
private List<string> _myheader;
public List<string> myheader
{
set
{
_myheader = value;
}
get
{
return _myheader;
}
}
}
}
listview laouttemplate模板类,需要输入显示的字段头文件list<>就可以自动生成
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货