Я новичок в кодировании и должен выполнить эту задачу как часть многоуровневого приложения.Этот код выполняется, но данные не отображаются в требуемом ListView.Я не уверен, что я сделал неправильно, поскольку у меня есть другой ListView, который использует подобный код и работает нормально.Есть только два столбца CategoryID и Category.Любая помощь будет оценена.
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Data.SqlClient;
using Acme.Data_Access_Layer;
using Acme.Business_Layer;
namespace Acme
{
public partial class frmCategoriesView : Form
{
public frmCategoriesView()
{
InitializeComponent();
}
private void DisplayCategories()
{
string selectQuery = "SELECT Categories.CategoryID, Categories.Category FROM Categories ";
SqlConnection conn = ConnectionManager.DatabaseConnection();
SqlDataReader rdr = null;
try
{
conn.Open();
SqlCommand cmd = new SqlCommand(selectQuery, conn);
rdr = cmd.ExecuteReader();
while (rdr.Read())
{
//Define the list items
Categories categories = new Categories(int.Parse(rdr["CategoryID"].ToString()), rdr["Category"].ToString());
ListViewItem lvi = new ListViewItem(categories.CategoryID.ToString());
lvi.SubItems.Add(categories.Category);
lvCategory.Items.Add(lvi);
}
if (rdr != null)
rdr.Close();
conn.Close();
}
catch (Exception ex)
{
MessageBox.Show("Unsuccessful" + ex);
}
}
private void frmCategoriesView_FormClosing(object sender, FormClosingEventArgs e)
{
frmMainForm mainForm = new frmMainForm();
mainForm.Show();
this.Hide();
}
private void btnClose_Click(object sender, EventArgs e)
{
this.Close();
}
private void frmCategoriesView_Load(object sender, EventArgs e)
{
DisplayCategories();
}
}
}