有什么 asp.net 的表格控件 能实现主从 数据表示的???????????? 急!!!!
就是每一行都可以在下面展开一个详细的表格的控件。
我用vs2003,最好是免费的控件
就是每一行都可以在下面展开一个详细的表格的控件。
我用vs2003,最好是免费的控件
解决方案 »
- 安装Microsoft Visual Studio 2008 Team test load Controller 会的进来看看 急的很
- 请教,在方法里面不可以workid='"+e.Item.Cells[1].Text+"' 用这样的格式吗?谢谢
- freetextbox 文本编辑器的问题
- ****慕白兄,您在吗?请回头看一看:您问的“你是怎么绑定的?”的贴
- asp.net获取表格里的控件值问题
- 存储过程能调试么?
- Asp.net采用windows身份验证,怎么设置用户、密码?
- 为什么显示不出值?
- .net调用 axis2 WebService
- 简单数组小问题。讨论有分。
- 用Window.Print打印页面的一部分时怎样保持背景色?
- HttpContext应该在哪个名字控件下使用?
大概思路就是
DataList两层嵌套,
外层的DataList有个显示|隐藏的button.
内层的DataList外面加个DIV,并设为"不可见",在外层的应该有个ID字段,然后外层的绑定结束后事件内DataList childDataList = (DataList)e.FindControl("DataList2");
然后对childDataList根据外层的ID进行数据绑定.在html用javascript处理外层的button.click事件,将DIV显示|隐藏就可以了
建立一模板列
里面再放一datagrid2
然后在datagrid1的绑定事件中去绑定datagrid2
这个是用repeater控件做的,用datalist用datagrid基本上都差不多,弄懂了一个,其它的都可以懂了。
<%@ import namespace="System.Data.SqlClient"%><script runat=server language=c#>void Page_Load()
{
if(!IsPostBack)
{
SqlConnection conNorthwind;
SqlCommand cmdSelect;
SqlDataReader dtrCategories;conNorthwind = new SqlConnection("server=localhost;uid=sa;pwd=xtwfkbgy;database=Northwind");
cmdSelect = new SqlCommand("Select CategoryID,CategoryName from Categories",conNorthwind);
conNorthwind.Open();
dtrCategories = cmdSelect.ExecuteReader();
dropCategories.DataSource = dtrCategories;
dropCategories.DataTextField = "CategoryName";
dropCategories.DataValueField = "CategoryID";
dropCategories.DataBind();dropCategories.Items.Insert(0,new ListItem("none selected","-1"));dtrCategories.Close();
conNorthwind.Close();
}
}void BindProducts( int intCatID )
{
SqlConnection conNorthwind;
SqlCommand cmdSelect;
string strSelect;
SqlDataReader dtrProducts;conNorthwind = new SqlConnection("server=localhost;uid=sa;pwd=xtwfkbgy;database=northwind");
conNorthwind.Open();strSelect = "select ProductName,UnitPrice from Products where CategoryID=@catID";
cmdSelect = new SqlCommand(strSelect,conNorthwind);
cmdSelect.Parameters.Add("@catID",intCatID);
dtrProducts = cmdSelect.ExecuteReader();rptProducts.DataSource = dtrProducts;
rptProducts.DataBind();dtrProducts.Close();
conNorthwind.Close();
}void dropCategories_SelectedIndexChanged(object s,EventArgs e)
{
int intCatID;intCatID = int.Parse(dropCategories.SelectedItem.Value);
if (intCatID != -1 )
{
BindProducts( intCatID );
}
}</script><html>
<head><title>MasterDetail.aspx</title></head>
<body>
<form runat=server><b>Select Category:</b>
<asp:DropDownList
ID="dropCategories"
AutoPostBack="True"
OnSelectedIndexChanged="dropCategories_SelectedIndexChanged"
runat=server/><p><asp:Repeater
ID="rptProducts"
EnableViewState = "False"
runat=server><ItemTemplate>
<li><%#DataBinder.Eval(Container.DataItem, "ProductName")%>-
<%#string.Format("{0:c}",DataBinder.Eval(Container.DataItem, "UnitPrice"))%>
</ItemTemplate></asp:Repeater></form>
</body>
</html>