| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1336 人关注过本帖
标题:我想从数据库中查询一个数据,存在就绑定,没有就隐藏控件,为什么达不到效果?
只看楼主 加入收藏
zhzh
Rank: 2
等 级:新手上路
威 望:3
帖 子:377
专家分:0
注 册:2006-10-18
收藏
 问题点数:0 回复次数:11 
我想从数据库中查询一个数据,存在就绑定,没有就隐藏控件,为什么达不到效果?
我想从数据库中查询出一条数据绑定到DataGrid控件上!如果数据库中没有数据的话就隐藏整个DataGrid控件?有数据的话就绑定显示数据?我的代码如下:为何达不到效果
OleDbConnection conn=new OleDbConnection();
conn.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;"+"Data Source="+Server.MapPath(@"\hpuedu\hpuwebdata\webdata.mdb");
conn.Open();
int myID=Convert.ToInt32(Request["ID"]);
string strsql="select newsImg from hotNews where ID like '"+myID+"'";
OleDbDataAdapter da=new OleDbDataAdapter(strsql,conn);
DataSet ds=new DataSet();
if(strsql==null)
{
this.DataGrid2.Visible=false;
}
else
{
da.Fill(ds,"DataGrid2");
this.DataGrid2.DataSource=ds.Tables["DataGrid2"].DefaultView;
this.DataGrid2.DataBind();
conn.Close();
}
搜索更多相关主题的帖子: 数据库 绑定 控件 效果 隐藏 
2006-11-15 11:26
hoya
Rank: 5Rank: 5
等 级:贵宾
威 望:15
帖 子:538
专家分:0
注 册:2006-6-27
收藏
得分:0 
你没弄清strsql是什么东西...

strsql 是你定义并赋值的字符串

strsql是不为空的....

然 你 if(strsql==null) 是不成立的 所以 this.DataGrid2.Visible=false; 不执行

判断相关查询有没记录:
da.Fill(ds,"DataGrid2");

if(ds.Tables["DataGrid2"].rows.count>0)
{
this.DataGrid2.DataSource=ds.Tables["DataGrid2"].DefaultView;
this.DataGrid2.DataBind();
conn.Close();
}
else
{
this.DataGrid2.Visible=false;

}


妈的...一天能卖一颗就很不错了...
2006-11-15 11:44
zhzh
Rank: 2
等 级:新手上路
威 望:3
帖 子:377
专家分:0
注 册:2006-10-18
收藏
得分:0 
我试了一下还是不行?没有数据的时候也没有隐藏这块搞的我头发都快掉了
OleDbConnection conn=new OleDbConnection();
conn.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;"+"Data Source="+Server.MapPath(@"\hpuedu\hpuwebdata\webdata.mdb");
conn.Open();
int myID=Convert.ToInt32(Request["ID"]);
string strsql="select newsImg from hotNews where ID like '"+myID+"'";
OleDbDataAdapter da=new OleDbDataAdapter(strsql,conn);
DataSet ds=new DataSet();
da.Fill(ds,"DataGrid2");
if(ds.Tables["DataGrid2"].Rows.Count>0)
{
this.DataGrid2.DataSource=ds.Tables["DataGrid2"].DefaultView;
this.DataGrid2.DataBind();
conn.Close();
}
else
{
this.DataGrid2.Visible=false;
}

Tomorrow is another day! my love..................
2006-11-15 12:24
hoya
Rank: 5Rank: 5
等 级:贵宾
威 望:15
帖 子:538
专家分:0
注 册:2006-6-27
收藏
得分:0 

获取ds.Tables["DataGrid2"].Rows.Count 看值是多少?/


妈的...一天能卖一颗就很不错了...
2006-11-15 12:43
zhzh
Rank: 2
等 级:新手上路
威 望:3
帖 子:377
专家分:0
注 册:2006-10-18
收藏
得分:0 
小弟刚刚入门,版主我不明白什么意思?

Tomorrow is another day! my love..................
2006-11-15 12:59
hoya
Rank: 5Rank: 5
等 级:贵宾
威 望:15
帖 子:538
专家分:0
注 册:2006-6-27
收藏
得分:0 

你找本书看看先....


妈的...一天能卖一颗就很不错了...
2006-11-15 13:33
zhzh
Rank: 2
等 级:新手上路
威 望:3
帖 子:377
专家分:0
注 册:2006-10-18
收藏
得分:0 

哦!!非常感谢版主先!!!
但是怎么想这都是一个很简单的问题啊?去数据库中查找一条数据!!!!有就读出来绑定,没有就把DataGrid控件隐藏掉!我找了很多书和资料.都达不到这么简单的效果!我实在没有办法了!难道又要为这一点小问题再放弃整个工程吗?
心有不甘!!!!自学一门技术真的很难很难!
希望前辈门多指点一下!看看有什么办法能实现??????
小弟拜托了~~
决不放弃工程,在线等指点
谢谢在先


Tomorrow is another day! my love..................
2006-11-15 14:04
zhzh
Rank: 2
等 级:新手上路
威 望:3
帖 子:377
专家分:0
注 册:2006-10-18
收藏
得分:0 
完整代码如下:
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Data.OleDb;
namespace hpuedu
{
/// <summary>
/// main 的摘要说明。
/// </summary>
public class main : System.Web.UI.Page
{
protected System.Web.UI.WebControls.DataGrid DataGrid1;
protected System.Web.UI.WebControls.DataGrid DataGrid2;
private void Page_Load(object sender, System.EventArgs e)
{
if(!IsPostBack)
{
this.BindToDataGrid();
}
// 在此处放置用户代码以初始化页面
}
private void BindToDataGrid()//----绑定新闻图片的方法
{
OleDbConnection conn=new OleDbConnection();
conn.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;"+"Data Source="+Server.MapPath(@"\hpuedu\hpuwebdata\webdata.mdb");
conn.Open();
int myID=Convert.ToInt32(Request["ID"]);
string strsql="select newsImg from hotNews where ID like '"+myID+"'";
OleDbDataAdapter da=new OleDbDataAdapter(strsql,conn);
DataSet ds=new DataSet();
da.Fill(ds,"DataGrid2");
if(ds.Tables["DataGrid2"].Rows.Count>0)
{
this.DataGrid2.DataSource=ds.Tables["DataGrid2"].DefaultView;
this.DataGrid2.DataBind();
conn.Close();
}
else
{
this.DataGrid2.Visible=false;
}
}

Tomorrow is another day! my love..................
2006-11-15 14:32
zhzh
Rank: 2
等 级:新手上路
威 望:3
帖 子:377
专家分:0
注 册:2006-10-18
收藏
得分:0 
怎么办啊?有没有人有办法啊

Tomorrow is another day! my love..................
2006-11-15 16:44
bygg
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:乖乖的心中
等 级:版主
威 望:241
帖 子:13555
专家分:3076
注 册:2006-10-23
收藏
得分:0 

OleDbConnection conn=new OleDbConnection();
conn.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;"+"Data Source="+Server.MapPath(@"\hpuedu\hpuwebdata\webdata.mdb");
conn.Open();
int myID=Convert.ToInt32(Request["ID"]);
string strsql="select newsImg from hotNews where ID like '%"+myID+"%'";
OleDbDataAdapter da=new OleDbDataAdapter(strsql,conn);
DataSet ds=new DataSet();
da.Fill(ds,"DataGrid2");
if(ds.Tables["DataGrid2"].Rows.Count>0)
{
this.DataGrid2.Visible=ture;
this.DataGrid2.DataSource=ds.Tables["DataGrid2"].DefaultView;
this.DataGrid2.DataBind();
conn.Close();
}
else
{
this.DataGrid2.Visible=false;
}

红色地方有点重复。既然用到模糊查询就不用再把 Request["ID"] 进行转换。
黑体部份不要。

飘过~~
2006-11-15 19:52
快速回复:我想从数据库中查询一个数据,存在就绑定,没有就隐藏控件,为什么达不到 ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.022545 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved