用C#实现将数据库中的两个表的两列分别显示在listBox1和listBox2中
usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Da...
using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;using System.Data.SqlClient;using System.Configuration;
namespace WindowsFormsApplication1{ public partial class Form1 : Form { public Form1() { InitializeComponent(); }
private void Form1_Load(object sender, EventArgs e) { // TODO: 这行代码将数据加载到表“siplace_kanbanDataSet1.kanbanTable”中。您可以根据需要移动或删除它。 this.kanbanTableTableAdapter.Fill(this.siplace_kanbanDataSet1.kanbanTable); BindListBox1(); //BindListBox2(); }
//设定ListBox控件显示内容 public void BindListBox1() { string sql1 = "select lId,dtTime from BOARD"; string sql2 = "select dtTime from CompBlock"; listBox1.DataSource = GetData1(sql1).Tables[0]; listBox1.DisplayMember = "lId"; listBox2.DataSource = GetData2(sql2).Tables[1]; listBox2.DisplayMember = "dtTime"; }
/*public void BindListBox2() { string sql2 = "select dtTime from CompBlock"; listBox2.DataSource = GetData2(sql2); listBox2.DisplayMember = "dtTime"; }*/
private DataSet GetData1(string sql) { DataSet table1 = new DataSet(); String connectionString = "Data Source=SZNC4924;" + "Initial Catalog=OIS1;User ID=sa;Password=Siplace.1"; SqlConnection conn = new SqlConnection(connectionString); SqlDataAdapter dataAdapter1 = new SqlDataAdapter(sql,conn); dataAdapter1.Fill(table1); return table1; }
private DataSet GetData2(string sql) { DataSet table2 = new DataSet(); String connectionString = "Data Source=SZNC4924;" + "Initial Catalog=OIS1;User ID=sa;Password=Siplace.1"; SqlConnection conn = new SqlConnection(connectionString); SqlDataAdapter dataAdapter2 = new SqlDataAdapter(sql, conn); dataAdapter2.Fill(table2); return table2; } }
}
出现的结果为
listBox1有显示,但listBox2没有,为什么? 展开
namespace WindowsFormsApplication1{ public partial class Form1 : Form { public Form1() { InitializeComponent(); }
private void Form1_Load(object sender, EventArgs e) { // TODO: 这行代码将数据加载到表“siplace_kanbanDataSet1.kanbanTable”中。您可以根据需要移动或删除它。 this.kanbanTableTableAdapter.Fill(this.siplace_kanbanDataSet1.kanbanTable); BindListBox1(); //BindListBox2(); }
//设定ListBox控件显示内容 public void BindListBox1() { string sql1 = "select lId,dtTime from BOARD"; string sql2 = "select dtTime from CompBlock"; listBox1.DataSource = GetData1(sql1).Tables[0]; listBox1.DisplayMember = "lId"; listBox2.DataSource = GetData2(sql2).Tables[1]; listBox2.DisplayMember = "dtTime"; }
/*public void BindListBox2() { string sql2 = "select dtTime from CompBlock"; listBox2.DataSource = GetData2(sql2); listBox2.DisplayMember = "dtTime"; }*/
private DataSet GetData1(string sql) { DataSet table1 = new DataSet(); String connectionString = "Data Source=SZNC4924;" + "Initial Catalog=OIS1;User ID=sa;Password=Siplace.1"; SqlConnection conn = new SqlConnection(connectionString); SqlDataAdapter dataAdapter1 = new SqlDataAdapter(sql,conn); dataAdapter1.Fill(table1); return table1; }
private DataSet GetData2(string sql) { DataSet table2 = new DataSet(); String connectionString = "Data Source=SZNC4924;" + "Initial Catalog=OIS1;User ID=sa;Password=Siplace.1"; SqlConnection conn = new SqlConnection(connectionString); SqlDataAdapter dataAdapter2 = new SqlDataAdapter(sql, conn); dataAdapter2.Fill(table2); return table2; } }
}
出现的结果为
listBox1有显示,但listBox2没有,为什么? 展开
4个回答
展开全部
listBox2.DataSource = GetData2(sql2).Tables[1];
listBox2.DisplayMember = "dtTime";
首先: Tables[1],改成Tables[0]。
没数据的话,把语句“select dtTime from CompBlock”在数据库执行一下,看有没有数据结果。
看一下listBox2控件的属性是不是有问题。
listBox2.DisplayMember = "dtTime";
首先: Tables[1],改成Tables[0]。
没数据的话,把语句“select dtTime from CompBlock”在数据库执行一下,看有没有数据结果。
看一下listBox2控件的属性是不是有问题。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
listBox2.DataSource = GetData2(sql2).Tables[1]; 也要取Tables[0]中的数据
追问
我试过 也不行
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
GetData2(sql2).Tables[1] 改为 GetData2(sql2).Tables[0];
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
BindListBox1();
//BindListBox2();
你加载事件里都注释掉了,你觉得会有吗?
//BindListBox2();
你加载事件里都注释掉了,你觉得会有吗?
追问
那是我将两个合并到BindListBox1();中了啊
追答
listBox2.DataSource = GetData2(sql2).Tables[1];
改成
listBox2.DataSource = GetData2(sql2).Tables[0];
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询