DataList嵌套绑定数据时报错:未将对象引用设置到对象的实例。 求解??

页面代码:<asp:DataListID="DataList1"runat="server"onitemdatabound="DataList1_ItemDataBoun... 页面代码:
<asp:DataList ID="DataList1" runat="server"
onitemdatabound="DataList1_ItemDataBound" >
<SelectedItemTemplate>
<asp:DataList ID="DataList2" runat="server" Width="161px">
<ItemTemplate>
<asp:LinkButton ID="LinkButton2" runat="server" Text='<%# Eval("MingCheng") %>'></asp:LinkButton>
</ItemTemplate>
</asp:DataList>
</SelectedItemTemplate>
<ItemTemplate>
<asp:LinkButton ID="LinkButton1" runat="server" Text='<%# Eval("MingCheng") %>'></asp:LinkButton>
</ItemTemplate>
</asp:DataList>
后台代码:
protected void Page_Load(object sender, EventArgs e)
{
DataList1.DataSource = DbHelperSQL.SelectTable("select MingCheng from tb_ShangPinDaLei", CommandType.Text);
DataList1.DataBind();
}

protected void DataList1_ItemDataBound(object sender, DataListItemEventArgs e)
{
DataList dl =e.Item.FindControl("DataList2") as DataList ;
LinkButton LB=e.Item .FindControl ("LinkButton1") as LinkButton ;
string DaLei=LB.Text .ToString ();
dl.DataSource = DbHelperSQL.SelectTable("select MingCheng from tb_ShangPinXiaoLei where DaleiID='"+DaLei +"'" , CommandType.Text);
dl.DataBind();
}
展开
 我来答
allen76615519
2011-11-14 · 超过80用户采纳过TA的回答
知道小有建树答主
回答量:234
采纳率:0%
帮助的人:164万
展开全部
不需要这么复杂

protected void Page_Load(object sender, EventArgs e)
{
DataList1.DataSource = DbHelperSQL.SelectTable("select MingCheng from tb_ShangPinDaLei", CommandType.Text);
DataList1.DataBind();
}

这个方法你已经可以绑定前台的数据了
现在有可能是你的数据取方法的位置有问题,还有,不要直接赋值给DataSource,你可以先把取出的数据放在DataSet中,打断点,看看数据是否正确取到
DataSet ds=DbHelperSQL.SelectTable("select MingCheng from tb_ShangPinDaLei", CommandType.Text);
DataList1.DataSource = ds;
DataList1.DataBind();
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
淡聆_
2011-11-14 · 超过10用户采纳过TA的回答
知道答主
回答量:46
采纳率:0%
帮助的人:22.2万
展开全部

是不是你要查找的数据在数据库不存在?

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
班丘晓桐0U
2011-11-12 · TA获得超过446个赞
知道小有建树答主
回答量:739
采纳率:0%
帮助的人:616万
展开全部
DbHelperSQL.SelectTable("select MingCheng from tb_ShangPinDaLei", CommandType.Text);
看看此处的dbHelperSQL是不是需要实例化啊?
追问
不是,实例化了之后也错。
报错的地方是这句:
dl.DataSource = DbHelperSQL.SelectTable("select MingCheng from tb_ShangPinXiaoLei where DaleiID='"+DaLei +"'" , CommandType.Text);
追答
DataList dl =e.Item.FindControl("DataList2") as DataList ;那估计是这行找datalist2时没找到!
你把绑定语句注释,然后给这个对象赋值一个属性看看,如果还报错就是我说的没找到,如果行那就不是这个问题了,你检查一下吧!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式