Hi Sir, i just want to ask and need some help on how can i display data from mysql to c# listview. Here is my code but not working.
clientlistview.Items.Clear();
string sqlselect = "SELECT clientId, clientFName, clientMName, clientLName from clientreg";
MySqlConnection connect = new MySqlConnection(conn);
MySqlCommand cm = new MySqlCommand(sqlselect, connect);
DataTable tbl = new DataTable();
MySqlDataReader read = cm.ExecuteReader();
foreach (DataRow row in tbl.Rows)
{
ListViewItem list = new ListViewItem(row[0].ToString());
list.SubItems.Add(row[1].ToString());
list.SubItems.Add(row[2].ToString());
list.SubItems.Add(row[3].ToString());
clientlistview.Items.Add(list);
}
Thanks in advance Sir!
Loading
vergel aranasPosted Jul 1, 2012, 2:24 PM
In my code that i posted i just changed the following code here...and now its working..
clientlistview.Items.Clear();
string sqlselect = "SELECT clientId, clientFName, clientMName, clientLName from clientreg where clientFName ='" + txtclientlist.Text + "' ";
MySqlConnection connect = new MySqlConnection(conn);
MySqlCommand cm = new MySqlCommand(sqlselect, connect);
DataTable tbl = new DataTable();
//this line here
MySqlDataAdapter mda = new MySqlDataAdapter(cm);
mda.Fill(tbl);
//that i change instead in my first code
foreach (DataRow row in tbl.Rows)
{
ListViewItem list = new ListViewItem(row[0].ToString());
list.SubItems.Add(row[1].ToString());
list.SubItems.Add(row[2].ToString());
list.SubItems.Add(row[3].ToString());
clientlistview.Items.Add(list);
}
}
Satyapriya NayakPosted Jul 1, 2012, 12:49 PM
Try this...
Here i have used OleDbConnection.You convert it to MySqlConnection accordingly.
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.OleDb;
namespace Listview_display
{
public partial class Form1 : Form
{
string ConnectionString = System.Configuration.ConfigurationSettings.AppSettings["dsn"];
OleDbCommand com;
OleDbDataAdapter oledbda;
string str;
DataSet ds;
DataTable dt;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
listView1.Columns.Add("ID", 70, HorizontalAlignment.Center);
listView1.Columns.Add("GRADE", 70, HorizontalAlignment.Center);
listView1.View = View.Details;
listView1.GridLines = true;
listView1.BackColor = Color.Aqua;
listView1.ForeColor = Color.Blue;
OleDbConnection con = new OleDbConnection(ConnectionString);
con.Open();
str = "select * from test Query";
com = new OleDbCommand(str, con);
oledbda = new OleDbDataAdapter(com);
ds = new DataSet();
oledbda.Fill(ds, "test Query");
con.Close();
dt = ds.Tables["test Query"];
int i;
for (i = 0; i <= dt.Rows.Count - 1; i++)
{
listView1.Items.Add(dt.Rows[i].ItemArray[0].ToString());
listView1.Items[i].SubItems.Add(dt.Rows[i].ItemArray[1].ToString());
}
}
}
}
Thanks
VulpesPosted Jul 1, 2012, 12:21 PM
I'm assuming that the clientId column is an integer, rather than a string:
clientlistview.Items.Clear();
string sqlselect = "SELECT clientId, clientFName, clientMName, clientLName from clientreg";
MySqlConnection connect = new MySqlConnection(conn);
MySqlCommand cm = new MySqlCommand(sqlselect, connect);
MySqlDataReader reader = cm.ExecuteReader();
while(reader.Read())
{
ListViewItem list = new ListViewItem(reader.GetInt32(0).ToString());
list.SubItems.Add(reader.GetString(1));
list.SubItems.Add(reader.GetString(2));
list.SubItems.Add(reader.GetString(3));
clientlistview.Items.Add(list);
}
reader.Close();
connect.Close();