c# - 使用虚拟数据创建 DataTable 对象

标签 c# ajax data-binding ajaxcontroltoolkit accordion

我正在尝试将 DataTable 数据绑定(bind)到 Accordion ,我发现如果我使用表适配器从数据库中检索 DataTable,它会完美地绑定(bind)到 Accordion ,但是我想要做的是创建一个虚拟表(用于测试目的(如果我无权访问我的数据库)创建虚拟表的代码如下:

    DataTable table2 = new DataTable("articletable");
    table2.Columns.Add("articleID");
    table2.Columns.Add("title");
    table2.Columns.Add("content");

    DataRow row = table2.NewRow();
    row[0] = "1";
    row[1] = "article name";
    row[2] = "article contents go here";
    table2.Rows.Add(row);

当我尝试对该表进行数据绑定(bind)时, Accordion 不显示。我可以将它绑定(bind)到 gridview 或 detailview,但不能绑定(bind) Accordion 。

最佳答案

在用头撞墙 4 小时后,我发现 DataSource 字段非常挑剔。

这是我的代码:

DataSet ds = new DataSet();

        DataTable dt = new DataTable();
        dt.Columns.Add("Name");
        dt.Columns.Add("Branch");
        dt.Columns.Add("Officer");
        dt.Columns.Add("CustAcct");
        dt.Columns.Add("Grade");
        dt.Columns.Add("Rate");
        dt.Columns.Add("OrigBal");
        dt.Columns.Add("BookBal");
        dt.Columns.Add("Available");
        dt.Columns.Add("Effective");
        dt.Columns.Add("Maturity");
        dt.Columns.Add("Collateral");
        dt.Columns.Add("LoanSource");
        dt.Columns.Add("RBCCode");

        dt.Rows.Add(new object[] { "James Bond, LLC", 120, "Garrison Neely", "123 3428749020", 35, "6.000", "$24,590", "$13,432",
            "$12,659", "12/13/21", "1/30/27", 55, "ILS", "R"});

        ds.Tables.Add(dt);

        accReportData.DataSourceID = null;
        accReportData.DataSource = ds.Tables[0].DefaultView;
        accReportData.DataBind();

事实证明 Accordion 只喜欢绑定(bind)到数据集表的默认 View 。我尝试仅绑定(bind)到一个 DataTable (dt),但失败了。甚至 dt.DefaultView 也失败了。一旦我将它添加到数据集,它就会像冠军一样绑定(bind)。非常烦人,浪费了很多时间。我知道您可能早就忘记了这一点,但我想让 future 的搜索者可以使用它。 Accordion.DataSource 必须绑定(bind)到 DataSet.Table.DefaultView 才能工作。

关于c# - 使用虚拟数据创建 DataTable 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1645247/

相关文章:

c# - 数据模板未显示

.net - wpf 绑定(bind)到索引器

c# - 将资源字符串格式化为另一个?

c# - 将 NameValueCollection 绑定(bind)到 GridView?

c# - 如何使用 LINQ 方法语法按属性顺序分组和处理?

jquery - 获取从第一页到第二页的输入值

php - 在 PHP 中加密部分 HTML 并在 JavaScript 中解密

php - 联系表单中的 From 字段和 mail() 函数存在问题

c# - 宇宙(C#操作系统): running on Azure?

c# - WCF 消息安全实际上是否加密消息内容?