#### DataSet 读取 XML ###

jleex 2008-02-02 03:15:24
ASP.NET 源代码部分:
====================================================================================
  private void getObjXML(object source, DataGridCommandEventArgs e)
  {
    DataSet myDataSet = new DataSet();
    FileStream myFileStream = new FileStream(Server.MapPath("objContent.xml"), FileMode.Open, FileAccess.Read);
    StreamReader myStreamReader = new StreamReader(myFileStream);
    myDataSet.ReadXml(myStreamReader);
    
    DataGrid1.DataSource = myDataSet.Tables[0].DefaultView;
    DataGrid1.DataBind();
    
  }
====================================================================================
HTML 代码部分:
  <form id="Form1" method="post" runat="server">
    <asp:DataGrid id="DataGrid1" runat="server" />
  </form>
====================================================================================

错误信息为:The name 'DataGrid1' does not exist in the current context.

希望能够得到大家的帮助,谢谢!
...全文
144 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
lovexin 2008-02-03
  • 打赏
  • 举报
回复
happy happy

欢迎大伙来C# / .Net 7729746 交流社团 聊技术,项目合作。

Blogs http://zhoufleru.cnblogs.com
jimu8130 2008-02-03
  • 打赏
  • 举报
回复
一个页面只能有一个form.且所有元素都在form内
------------
一个页面可以有多个form,你自己实践下就知道了
lovehongyun 2008-02-03
  • 打赏
  • 举报
回复
重建一个页面试试..
amandag 2008-02-02
  • 打赏
  • 举报
回复
贴全部的html代码看看
一品梅 2008-02-02
  • 打赏
  • 举报
回复
将外层div去掉,一个页面只能有一个form.且所有元素都在form内
<head>
<title>...</title>
.
<link >...</head>
</head>
<form ... runat="server">


.
</form>
一品梅 2008-02-02
  • 打赏
  • 举报
回复
form外怎么还有div .
是语法错误,楼主仔细检查一下前台HTML.
caicoko 2008-02-02
  • 打赏
  • 举报
回复
改成<asp:DataGrid id="DataGrid1" runat="server"></asp:DataGrid>
jimu8130 2008-02-02
  • 打赏
  • 举报
回复
<div>
     <form id="Form1" method="post" runat="server">
       <asp:DataGrid id="DataGrid1" runat="server" />
     </form>
   </div>
还有div?

莫非是多个form?

这样用列?
Form1.DataGrid1?
LikeCode 2008-02-02
  • 打赏
  • 举报
回复
重新创建一个页面,将控件拖入,代码再一行行打试试看.
jleex 2008-02-02
  • 打赏
  • 举报
回复
感谢大家的帮助,

Default.aspx 文件部分:
=======================================================================================

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<html>
......
  <div>
    <form id="Form1" method="post" runat="server">
      <asp:DataGrid id="DataGrid1" runat="server" />
    </form>
  </div>
......
</html>

=======================================================================================

Default.aspx.cs 文件部分:
=======================================================================================

using System;
using System.ComponentModel;
using System.Configuration;
using System.Data;
using System.Data.OleDb;
using System.Diagnostics;
using System.IO;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;

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

  }

  private void getObjXML()
  {
    DataSet myDataSet = new DataSet();
    myDataSet.ReadXml(Server.MapPath("objContent.xml"));
    
    DataGrid1.DataSource = myDataSet.Tables[0].DefaultView;
    DataGrid1.DataBind();
  }
}

=======================================================================================

我就不知道它说 控件不存在 是什么意思了。
libirds 2008-02-02
  • 打赏
  • 举报
回复
LikeCode说的太对了。不过你是要用委托么?
jimu8130 2008-02-02
  • 打赏
  • 举报
回复
你确定那个get方法是放在含有id为datagrid1的页面后台代码里面么?
LikeCode 2008-02-02
  • 打赏
  • 举报
回复

  private void getObjXML(object source, DataGridCommandEventArgs e)
  {
    DataSet myDataSet = new DataSet();
    myDataSet.ReadXml(Server.MapPath("objContent.xml"));
    
    DataGrid1.DataSource = myDataSet.Tables[0].DefaultView;
    DataGrid1.DataBind();
    
  }
LikeCode 2008-02-02
  • 打赏
  • 举报
回复
提示不是非常明显了吗,根本找不到datagrid这个控件.
另外,dataset加载xml不必这么复杂,不是有个readxml有XML路径重载的方法吗

62,266

社区成员

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

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

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

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