try something like<script language="C#" runat="server"> class User { string m_sName; public ArrayList friends = new ArrayList(); public string Name { get {return m_sName;} set {m_sName = value;} } public User(string sName) { Name = sName; } }class Friend { string m_sName; string m_sNickName; public ArrayList friends = new ArrayList(); public string Name { get {return m_sName;} set {m_sName = value;} } public string NickName { get {return m_sNickName;} set {m_sNickName = value;} } public Friend(string sName, string sNickName) { Name = sName; NickName = sNickName; } }void Page_Load(Object sender, EventArgs e) { ArrayList a = new ArrayList(); User u; Friend f,f2; u = new User("John"); f = new Friend("Sam", "The Dog");
f2 = new Friend("Tim", "Puppy"); f.friends.Add(f2); f2 = new Friend("Bill", "Hedge"); f.friends.Add(f2); u.friends.Add(f); f = new Friend("David", "The Cat");
f2 = new Friend("Tom", "Wacko"); f.friends.Add(f2); f2 = new Friend("Larry", "Snake"); f.friends.Add(f2); f2 = new Friend("Adam", "Dude"); f.friends.Add(f2); u.friends.Add(f); a.Add(u); //add more users here DataGrid1.DataSource = a; DataGrid1.DataBind();}protected void OnItemDataBound(object sender, DataGridItemEventArgs e) { if(e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem) { ArrayList a; if (e.Item.DataItem is User) { a = ((User)e.Item.DataItem).friends; } else { a = ((Friend)e.Item.DataItem).friends; }
if (a.Count > 0) {
DataGrid dg = new DataGrid(); dg.ItemDataBound += new DataGridItemEventHandler (OnItemDataBound); dg.DataSource = a; dg.DataBind(); TableCell tc = new TableCell(); tc.Controls.Add(dg); e.Item.Cells.Add(tc); } } } </script> <asp:datagrid id="DataGrid1" runat="server" OnItemDataBound="OnItemDataBound"/>
可惜csdn给的最高分就100,要不我再加分。
class User
{
string m_sName;
public ArrayList friends = new ArrayList(); public string Name
{
get {return m_sName;}
set {m_sName = value;}
} public User(string sName)
{
Name = sName;
}
}class Friend
{
string m_sName;
string m_sNickName;
public ArrayList friends = new ArrayList();
public string Name
{
get {return m_sName;}
set {m_sName = value;}
}
public string NickName
{
get {return m_sNickName;}
set {m_sNickName = value;}
} public Friend(string sName, string sNickName)
{
Name = sName;
NickName = sNickName;
}
}void Page_Load(Object sender, EventArgs e)
{
ArrayList a = new ArrayList();
User u;
Friend f,f2; u = new User("John");
f = new Friend("Sam", "The Dog");
f2 = new Friend("Tim", "Puppy");
f.friends.Add(f2); f2 = new Friend("Bill", "Hedge");
f.friends.Add(f2); u.friends.Add(f);
f = new Friend("David", "The Cat");
f2 = new Friend("Tom", "Wacko");
f.friends.Add(f2); f2 = new Friend("Larry", "Snake");
f.friends.Add(f2); f2 = new Friend("Adam", "Dude");
f.friends.Add(f2); u.friends.Add(f); a.Add(u); //add more users here DataGrid1.DataSource = a;
DataGrid1.DataBind();}protected void OnItemDataBound(object sender, DataGridItemEventArgs e)
{
if(e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
ArrayList a;
if (e.Item.DataItem is User)
{
a = ((User)e.Item.DataItem).friends;
}
else
{
a = ((Friend)e.Item.DataItem).friends;
}
if (a.Count > 0)
{
DataGrid dg = new DataGrid(); dg.ItemDataBound += new DataGridItemEventHandler (OnItemDataBound);
dg.DataSource = a;
dg.DataBind(); TableCell tc = new TableCell();
tc.Controls.Add(dg);
e.Item.Cells.Add(tc);
} }
}
</script>
<asp:datagrid id="DataGrid1" runat="server" OnItemDataBound="OnItemDataBound"/>
string dg_cond;
DataSet dg_ds = new DataSet();
dg_cond = "select * from bgjj_table where ssbm =" + lv_nodenum ;
lv_bgjj.Visible = false ;
SqlDataAdapter dg_sqldataAdapter = new SqlDataAdapter(dg_cond ,sqlConnection1);
try
{
sqlConnection1.Open();
dg_sqldataAdapter.Fill(dg_ds,"bgjj");
}
finally
{
sqlConnection1.Close();
}
//绑定数据源
datagrid_bgjj.DataSource = dg_ds.Tables["bgjj"].DefaultView;
//设置显示风格
DataGridTableStyle dgts = new DataGridTableStyle();
dgts.MappingName = "bgjj" ;
dgts.ReadOnly = true ;
datagrid_bgjj.TableStyles.Add(dgts);
我马上去试试!还有一个问题,是关于OOP的,也请帮忙看看好吗?
http://expert.csdn.net/Expert/topic/1191/1191982.xml