DataGrid里面嵌套DataGrid的问题

jacksoncan 2004-03-15 08:30:24
如题,请问有哪位高手知道如何在DataGrid 里面嵌套一个DataGrid?
就是我想实现以下功能:datagrid里面有个放了LinkButton 的模板列
我想用户点击了LinkButton 后,进入<EditItemTemplate>模板里的DataGrid进行编辑,能做到吗?我试了一下,好像不行,不知道哪位高手知道?



<asp:DataGrid id="dg" style="Z-INDEX: 101; LEFT: 56px; POSITION: absolute; TOP: 56px" runat="server" AutoGenerateColumns="False">
<Columns>
<asp:TemplateColumn Header Text="SelectItem">
<ItemTemplate>
<asp:LinkButton id="lk" runat="server"></asp:LinkButton>
</ItemTemplate>
<EditItemTemplate>
</EditItemTemplate></asp:TemplateColumn>
</Columns>
</asp:DataGrid>
...全文
59 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
fqcd555 2004-03-16
  • 打赏
  • 举报
回复
up
athossmth 2004-03-16
  • 打赏
  • 举报
回复
我的DropDownList/ListBox in Datagrid示例:

aspx:

<asp:TemplateColumn HeaderText="Med">
<HeaderStyle Width="80px"></HeaderStyle>
<ItemTemplate>
<asp:DropDownList Width="80px" ID="ddlV" runat="server" Font-Size="8"></asp:DropDownList>
</ItemTemplate>
//显示的是一个多选项,普通情况下显是一个DropDownList
<EditItemTemplate>
<asp:ListBox Width="100px" id="lstV" runat="server" Height="120px"></asp:ListBox>
</EditItemTemplate>
//编辑模式显示ListBox
</asp:TemplateColumn>


在private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)中:


if (e.Item.ItemType == ListItemType.EditItem ) //编辑模式,绑定ListBox并置亮选中项
{
ListBox LB = (ListBox)(e.Item.Cells[8].FindControl("lstV "));
String strSql = "SELECT VIn, VName FROM tV ORDER BY VIn";
SqlDataAdapter daPV = new SqlDataAdapter (strSql, sqlCn);
DataSet dsPV = new DataSet();
daPV.Fill(dsPV, "tV");
LB.DataSource = dsPV.Tables["tV"].DefaultView;
LB.DataTextField = "VName";
LB.DataValueField = "VIn";
LB.DataBind();
LB.SelectionMode= ListSelectionMode.Multiple;

strSql = "SELECT VIn, VName FROM tV, sV WHERE sV.V = tV.VIn";
SqlCommand cmdPV = new SqlCommand(strSql);
cmdPV.Connection = sqlCn;
sqlCn.Open();
DataReader drPV = new DataReader();
drPV = cmdPV.ExecuteReader();
while(drPV.Read())
{
LB.Items.FindByValue(drPV.GetValue(0).ToString()).Selected = true;
}
sqlCn.Close();
}
else if(e.Item.ItemType==ListItemType.Item || e.Item.ItemType==ListItemType.AlternatingItem)//显示模式,绑定DropDownList
{
DropDownList DDL = (DropDownList)(e.Item.Cells[8].FindControl("ddlV"));
strSql = "SELECT VIn, VName FROM tV, sV WHERE sV.V =tV.VIn";
SqlCommand cmdPV = new SqlCommand(strSql);
cmdPV.Connection = sqlCn;
SqlDataAdapter daPV = new SqlDataAdapter(cmdPV);
daPV.Fill(dsPV, "tV");
DDL.DataSource = dsPV.Tables["tV"].DefaultView;
DDL.DataTextField = "VName";
DDL.DataValueField = "VIn";
DDL.DataBind();
}
refuly 2004-03-16
  • 打赏
  • 举报
回复
up
athossmth 2004-03-15
  • 打赏
  • 举报
回复
不过,话说回来,需要datagrid In datagrid吗?一般情况下Listbox In Datagrid就可以了。
athossmth 2004-03-15
  • 打赏
  • 举报
回复
http://dotnet.aspx.cc/ShowDetail.aspx?id=149E5DD7-3B32-461e-ACC6-51D1652E6746
ShengNet 2004-03-15
  • 打赏
  • 举报
回复
学习中...........
caojingui 2004-03-15
  • 打赏
  • 举报
回复
可以的,可惜我家里的电脑运行速度慢,没有办法给你调试。

62,072

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧