各位做b/s的高手,请问谁知道怎么写datagrid的三层嵌套????????请给代码或连接也行!
解决方案 »
- 如何在cs页面中调用一个sql 函数?
- wknight_IT 麻烦看一下能不能转换成string
- Oracle这个语句怎么优化能提高查询速率
- Response.Redirect 问题????
- .net下 如何处理主键约束错误
- 新闻系统的一个数据库检索效率问题
- C#中如何使用随机函数?
- asp.net中request.Form("val")返回不了中文
- 多个站点如何共享Session?
- 微软专家!? I miss you! *.ascx问题
- 如何将一个表中赋值给dropdownlist 的值,客户端选择值后再插入到另外一个表中
- 发布一个超爽的图片浏览器(C#写的) http://www.qqaa.net/asbestsee.exe
比如
private void Page_Load(object sender, System.EventArgs e)
{
DataGrid1.DataSource = ....;
DataGrid1.ItemCreated += new DataGridItemEventHandler(DataGrid1_ItemCreated);
DataGrid1.DataBind();
}private void PowerDataGrid1_ItemCreated(object sender, DataGridItemEventArgs e)
{
DataGrid DataGrid2 = (DataGrid)e.Item.FindControl("DataGrid2");
DataGrid2.DataSource = "";
DataGrid2.ItemCreated += new DataGridItemEventHandler(DataGrid2_ItemCreated);
DataGrid2.DataBind();
} private void DataGrid2_ItemCreated(object sender, DataGridItemEventArgs e)
{
DataGrid DataGrid3 = (DataGrid)e.Item.FindControl("DataGrid3");
DataGrid3.DataSource = "";
DataGrid3.DataBind();
}
大哥那前台哪???
private void PowerDataGrid1_ItemCreated(object sender, DataGridItemEventArgs e)应该是private void DataGrid1_ItemCreated(object sender, DataGridItemEventArgs e)前台很简单啊,你从工具箱里拽三个DataGrid出来,分别叫DataGrid1、DataGrid2、DataGrid3
把3放在2的一个模板列里,然后再一起放在1的一个模板列里就可以用了
{
SqlCommand cmd = new SqlCommand();
SqlConnection conn = new SqlConnection(connString);
try
{
PrepareCommand(cmd,conn,cmdType,cmdText,cmdParms);
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataSet ds = new DataSet(); da.Fill(ds);
cmd.Parameters.Clear(); return ds;
}
catch(Exception e)
{
throw new Exception(e.Message);
}
finally
{
if(conn != null)
conn.Close();
}
}数据层:public DataSet GetQyNewsFormQyid(string qyid)
{
SqlParameter parm = new SqlParameter(PARM_QY_ID, SqlDbType.VarChar,50);
parm.Value=qyid;
DataSet ds=SQL_DataAccess.ExecuteDataset(CommandType.Text,SQl_SEL_QYNEWS_BY_QYID,parm);
return ds;
}逻辑事物层:public DataSet LoadNewsFromQyId(string qyid)
{
NewsD news=new NewsD();
DataSet ds=(DataSet)news.GetQyNewsFormQyid(qyid);
return ds;
}表示层:private void BindGrid()
{
NewsB nb=new NewsB();
DataSet st=nb.LoadNewsFromQyId(Session["frhm"].ToString());
DataGrid1.DataSource=st;
DataGrid1.DataBind();
}
AutoGenerateColumns="False" CellPadding="1" BackColor="White" BorderStyle="None" HorizontalAlign="Center"
BorderWidth="1px" BorderColor="#73B3E1">
<SelectedItemStyle ForeColor="Black" BackColor="#EFEFEF"></SelectedItemStyle>
<EditItemStyle Wrap="False"></EditItemStyle>
<AlternatingItemStyle Wrap="False" BackColor="#F7FBFF"></AlternatingItemStyle>
<ItemStyle Font-Size="11pt" Wrap="False" ForeColor="Black" BackColor="White"></ItemStyle>
<HeaderStyle Font-Bold="True" HorizontalAlign="Center" ForeColor="White" BackColor="#2086D1"></HeaderStyle>
<FooterStyle HorizontalAlign="Right"></FooterStyle>
<Columns>
<asp:BoundColumn DataField="Number" SortExpression="Number" HeaderText="序号">
<HeaderStyle Width="30px"></HeaderStyle>
<ItemStyle VerticalAlign="Top"></ItemStyle>
</asp:BoundColumn>
<asp:BoundColumn DataField="ItemCode" SortExpression="ItemCode" HeaderText="项目编号">
<HeaderStyle Width="80px"></HeaderStyle>
<ItemStyle HorizontalAlign="Center" VerticalAlign="Top"></ItemStyle>
</asp:BoundColumn>
<asp:TemplateColumn SortExpression="ItemName" HeaderText="新合并的项目名称">
<ItemStyle Font-Underline="True" ForeColor="Blue" VerticalAlign="Top"></ItemStyle>
<ItemTemplate>
<%# Selector(DataBinder.Eval(Container.DataItem, "ItemName"),DataBinder.Eval(Container.DataItem, "Class5ID"),DataBinder.Eval(Container.DataItem,"ItemID").ToString(),DataBinder.Eval(Container.DataItem, "ItemClassID"))%>
</ItemTemplate>
</asp:TemplateColumn>
<asp:BoundColumn DataField="ItemClassName" SortExpression="ItemClassName" HeaderText="项目类型">
<HeaderStyle Width="55px"></HeaderStyle>
<ItemStyle VerticalAlign="Top"></ItemStyle>
</asp:BoundColumn>
<asp:BoundColumn DataField="SumMoney" SortExpression="SumMoney" HeaderText="计划费用" DataFormatString="{0:F2}">
<HeaderStyle Width="60px"></HeaderStyle>
<ItemStyle HorizontalAlign="Right" VerticalAlign="Top"></ItemStyle>
</asp:BoundColumn>
<asp:TemplateColumn HeaderText="被合并的项目列表">
<ItemStyle VerticalAlign="Top"></ItemStyle>
<ItemTemplate>
<asp:DataGrid GridLines="Horizontal" ShowHeader="True" CellPadding="2" BorderWidth="0px" AutoGenerateColumns="False" Runat="server" Font-Size="X-Small" Width="100%" DataSource='<%# GetOrdersDataSource((int)DataBinder.Eval(Container.DataItem, "ItemID")) %>' ID="Datagrid2" NAME="Datagrid1">
<SelectedItemStyle ForeColor="Black" BackColor="#EFEFEF"></SelectedItemStyle>
<EditItemStyle Wrap="False"></EditItemStyle>
<AlternatingItemStyle Wrap="False" BackColor="#F7FBFF"></AlternatingItemStyle>
<ItemStyle Font-Size="11pt" Wrap="False" ForeColor="Black" BackColor="White"></ItemStyle>
<HeaderStyle Font-Bold="True" HorizontalAlign="Left" ForeColor="White" BackColor="#2086D1"></HeaderStyle>
<FooterStyle HorizontalAlign="Right"></FooterStyle>
<Columns>
<asp:TemplateColumn SortExpression="ItemName" HeaderText="项目名称">
<ItemStyle Font-Underline="True" ForeColor="Blue" VerticalAlign="Top"></ItemStyle>
<ItemTemplate>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td width="15"><b>·</b></td>
<td>
<%# Selector(DataBinder.Eval(Container.DataItem, "ItemName"),DataBinder.Eval(Container.DataItem, "Class5ID"),DataBinder.Eval(Container.DataItem,"ItemID_Source").ToString(),DataBinder.Eval(Container.DataItem, "ItemClassID"))%>
</td>
</tr>
</table>
</ItemTemplate>
</asp:TemplateColumn>
<asp:BoundColumn DataField="SumMoney" SortExpression="SumMoney" HeaderText="计划费用" DataFormatString="{0:F2}">
<HeaderStyle Width="60px"></HeaderStyle>
<ItemStyle HorizontalAlign="Right" VerticalAlign="Top"></ItemStyle>
</asp:BoundColumn>
</Columns>
</asp:DataGrid>
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
<PagerStyle HorizontalAlign="Right" ForeColor="Black" BackColor="#F2F2F2" Mode="NumericPages"></PagerStyle>
</asp:datagrid>//******************************************************************以上是前台的二层套,第三层类似,不再提示...........................
如果查找控件, 也可以找到资料.一般查什么资料?msdn吗?
{ SqlCommand cmd = new SqlCommand();
SqlConnection conn = new SqlConnection(connString);
try
{
PrepareCommand(cmd,conn,cmdType,cmdText,cmdParms);
SqlDataAdapter da = new SqlDataAdapter(cmd);DataSet ds = new DataSet();da.Fill(ds);cmd.Parameters.Clear();return ds;
}
catch(Exception e)
{
throw new Exception(e.Message);
}
finally
{
if(conn != null)
conn.Close();
}}