怎么样实现把数据表格帮在MyDorpDownList

dkjdkj 2007-03-15 03:35:58
<body>
<form id="form1" runat="server">
<div align="center">
<asp:Repeater ID="MyRepeater" runat="server">
<ItemTemplate>
<asp:DropDownList ID="MyDropDownList" runat="server"></asp:DropDownList>
</ItemTemplate>
</asp:Repeater>
</div>
</form>
</body>


public partial class Repeater : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
BindDropDownList();
}

public SqlConnection CreateConn()
{
SqlConnection con = new SqlConnection();
con.ConnectionString = ConfigurationManager.AppSettings["SqlConnString"];
con.Open();
return con;
}

public void BindDropDownList()
{
SqlConnection conn = CreateConn();
SqlDataAdapter adapter = new SqlDataAdapter();
adapter.SelectCommand = new SqlCommand("select * from a_cat where sid<>0",conn);
DataSet ds = new DataSet();
adapter.Fill(ds, "a_cat");
MyRepeater.DataSource = ds.Tables["a_cat"].DefaultView;
MyRepeater.DataBind();
}
}
问问,怎么样实现把表格a_cat 绑定在MyDorpDownList 上,当然Repeater上也要显示其他表的内容。
...全文
154 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
nunucool 2007-03-15
  • 打赏
  • 举报
回复
d
dkjdkj 2007-03-15
  • 打赏
  • 举报
回复
public partial class Repeater : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
BindDropDownList();
}

public SqlConnection CreateConn()
{
SqlConnection con = new SqlConnection();
con.ConnectionString = ConfigurationManager.AppSettings["SqlConnString"];
con.Open();
return con;
}

public void BindDropDownList()
{
SqlConnection conn = CreateConn();
SqlDataAdapter adapter = new SqlDataAdapter();
adapter.SelectCommand = new SqlCommand("select * from a_cat where sid<>0", conn);
DataSet ds = new DataSet();
adapter.Fill(ds, "a_cat");
MyRepeater.DataSource = ds.Tables["a_cat"].DefaultView;
MyRepeater.DataBind();
}

protected void MyRepeater_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
SqlConnection conn = CreateConn();
SqlDataAdapter adapter = new SqlDataAdapter();
adapter.SelectCommand = new SqlCommand("select * from a_cat where sid<>0", conn);
DataSet ds = new DataSet();
adapter.Fill(ds, "a_cat");

DropDownList MyDropDownList = (DropDownList)e.Item.FindControl("MyDropDownList");
MyDropDownList.DataSource = ds.Tables["a_cat"].DefaultView;
MyDropDownList.DataTextField = "cat_name";
MyDropDownList.DataValueField = "cat_id";
MyDropDownList.DataBind();
}
}

可以帮数据调到DropDownList里面了,但是也面上数据库表里有多少个数据,也面上也有就几个DropDownList
xray2005 2007-03-15
  • 打赏
  • 举报
回复
在Repeater的ItemDataBound事件中写
DropDownList dlist=e.Items.FindControls("MyDropDownList") as DropDownList
if(dlist!=null)
{
string sql = "";
DataSet ds = DbHelperSQL.Query(sql);
this.MyDropDownList.DataTextField = "DirNameChs";
this.MyDropDownList.DataValueField = "DirectoryID";
this.MyDropDownList.DataSource = ds;
this.MyDropDownList.DataBind();
}

dkjdkj 2007-03-15
  • 打赏
  • 举报
回复
DropDownList 是在Repeater 中的,所以在绑定的时候是找不到this.MyDropDownList的
hy_lihuan 2007-03-15
  • 打赏
  • 举报
回复
(DropDownList)e.Items.FindControls("MyDropDownList")
在DataBound事件里面写
hy_lihuan 2007-03-15
  • 打赏
  • 举报
回复
string sql = "";
DataSet ds = DbHelperSQL.Query(sql);
this.MyDropDownList.DataTextField = "DirNameChs";
this.MyDropDownList.DataValueField = "DirectoryID";
this.MyDropDownList.DataSource = ds;
this.MyDropDownList.DataBind();
只能绑定两个字段阿,一个作为Text,一个作为Value;
不能把其他更多的字段绑定上ddl了
dkjdkj 2007-03-15
  • 打赏
  • 举报
回复
好象不行的,因为是Repeater里面的,不是在page层上
Zeilg1981 2007-03-15
  • 打赏
  • 举报
回复
一样的DataBind方法,需要指定Value和Text

62,266

社区成员

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

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

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

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