AjaxControlToolkit手风琴和数据绑定 [英] AjaxControlToolkit Accordion and databinding

查看:81
本文介绍了AjaxControlToolkit手风琴和数据绑定的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用Accordion
控件的HeaderTemplate和ContentTemplate并将其绑定到数据表。由于某种原因,它不会
显示任何数据。如果我将数据表绑定到数据列表,则可以认为它是
,这是已知问题,还是我做的事情完全是
错误。如果此
有所不同,我将在后面的代码中绑定手风琴控件。这是代码:

I'm using the HeaderTemplate and the ContentTemplate of the Accordion control and binding it to a datatable. For some reason it doesn't display any data. If I bind the datatable to a datalist it works as ecpected, is this a known issue or am i doing something completely wrong. I'm binding the accordion control in the code behind if this makes any difference. Here is the code:

<cc1:Accordion ID="databoundaccordion" runat="server" AutoSize="None"  
HeaderCssClass="articleHeader" HeaderSelectedCssClass="articleHeaderSelected" 
ContentCssClass="articleBody" FadeTransitions="true" 
SuppressHeaderPostbacks="true" RequireOpenedPane="true" 
TransitionDuration="250" FramesPerSecond="40">
<HeaderTemplate>
    <%# DataBinder.Eval(Container.DataItem, "name")%>
</HeaderTemplate>
<ContentTemplate>
    <p>Content goes here</p>
    <a href="Articles.aspx">Go</a>
</ContentTemplate>

并在后面的C#代码中:

and in the c# code behind:

databoundaccordion.DataSource = presenter.getDataTable();
databoundaccordion.DataBind();


推荐答案

将手风琴绑定到DataTable对象会遇到困难。

相反,通过将其转换为DataTableReader来执行以下操作,它应该可以正常工作:

You will have difficulties binding an Accordion to a DataTable object.
Instead, do the following by converting it into a DataTableReader and it should work just fine:

databoundaccordion.DataSource
                    = new System.Data.DataTableReader(presenter.getDataTable());
databoundaccordion.DataBind();

这是另一个带有示例数据的示例:

Here's another example with sample data:

DataTable dt = new DataTable();
dt.Columns.Add("HeaderText");
dt.Columns.Add("ContentText");

dt.Rows.Add(new object[] { "Heading 1", "Content 1" });
dt.Rows.Add(new object[] { "Heading 2", "Content 2" });

databoundaccordion.DataSource = new System.Data.DataTableReader(dt);
databoundaccordion.DataBind();

这篇关于AjaxControlToolkit手风琴和数据绑定的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆