【问题标题】:Why can't I bind a formview to this datasource?为什么我不能将表单视图绑定到这个数据源?
【发布时间】:2009-01-15 16:06:41
【问题描述】:

我这里有这段代码:

SqlCommand CodeStatus = new SqlCommand(SQL, DB);        
DB.Open();
Reader = CodeStatus.ExecuteReader();
FormView1.DataSource = Reader;
FormView1.DataBind();
DB.Close();

它与 gridview 一起工作,然后显示数据,但使用这个 formview 它不显示数据。为什么不?默认模式是只读的,应该只显示数据..对吧?

【问题讨论】:

  • 你有什么错误吗?你在formview中设置了模板吗??
  • 尝试为您的表单视图发布代码

标签: c# asp.net sql


【解决方案1】:

你的 FormView 有 ItemTemplate 吗?

MSDN 似乎暗示虽然有可能,但你需要一个。

【讨论】:

    【解决方案2】:

    MSDN 将 FormvView 定义为 “FormView 使用用户定义的模板显示来自数据源的单个记录的值。”

    所以你需要看看一些事情-

    1. 1.测试你的读者有什么。它甚至有行。微不足道但很常见 问题。
    2. 至少在 itemtemplate 中为 formview 提供一个模板。因为如果您以编程方式绑定它,FormView 将不会推断列。
    3. 尝试在标记中为单个模板项(如 )进行数据绑定。

    【讨论】:

    • 由于 gridview 正常工作(并且按预期返回了一行),我认为 formview 也会“知道”我想要显示的内容。我想现在是模板构建时间。谢谢!
    【解决方案3】:

    我知道这并不能直接回答您的问题,但是您是否尝试过使用 DataTable?

    using(SqlDataAdapter adapter = new SqlDataAdapter(sql,connection))
    {
       DataTable table = new DataTable();
       adapter.Fill(table);
       FormView1.DataSource = table;
       FormView1.DataBind();   
    }
    

    【讨论】:

      猜你喜欢
      • 2019-09-07
      • 2012-01-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-17
      • 2012-07-16
      • 1970-01-01
      • 2018-11-10
      相关资源
      最近更新 更多