C#中进度条连接数据库,并在label中显示,效果如下图,下面代码的数据源应该如何绑定,这里需要哪些引用

图片说明
图片说明
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.SQLite;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

string dbPath = @"D:\历年高考分数.db";
string dbPath = @"D:\历年高考分数.db";
string sq = @"Data Source=" + dbPath;
m = new SQLiteConnection(sq);
m.Open();
SQLiteDataAdapter mAdapter = new SQLiteDataAdapter("select para1,para2,para3 from 进度条", m);
DataSet ds = new DataSet();
mAdapter.Fill(ds);
DataTable dt = ds.Tables[0];
progressBar1.Value = double.Parse(dt.Rows[0]["para1"].ToString());
progressBar2.Value = double.Parse(dt.Rows[0]["para2"].ToString());
progressBar3.Value = double.Parse(dt.Rows[0]["para3"].ToString());
progressBar4.Value = double.Parse(dt.Rows[0]["para4"].ToString());
m.Close();图片说明
无法将double隐式转化为int。存在一个显式转化(是否缺少去强制转换)

1个回答

要看你的表结构。
假设你的表只有1行,para1是86.4,para2是79.5,等等。
那么
DataTable dt = ds.Tables[0];
progressBar1.Value = double.Parse(dt.Rows[0]["para1"].ToString());
progressBar2.Value = double.Parse(dt.Rows[0]["para2"].ToString());
progressBar3.Value = double.Parse(dt.Rows[0]["para3"].ToString());

weixin_44138934
wxy新人小白 对了,之前直接把double换成int了
一年多之前 回复
caozhy
回答这么多问题就耍赖把我的积分一笔勾销了 回复weixin_44138934: progressBar1.Value = (int)double.Parse(dt.Rows[0]["para1"].ToString());
一年多之前 回复
weixin_44138934
wxy新人小白 回复weixin_44138934: 最后一行,无法隐式转化
一年多之前 回复
caozhy
回答这么多问题就耍赖把我的积分一笔勾销了 回复weixin_44138934: 什么问题
一年多之前 回复
weixin_44138934
wxy新人小白 有问题
一年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐