使用 oracle 数据将数据显示到特定列 Grid control devexpress reader

Display Data to spesific column Grid control devexpress using oracle data reader

我已经尝试在 C# 中显示来自特定列 ListView 的数据并且成功了。但是我无法将其显示到 GridControl DevExpress 的特定列中。

这是我在 ListView 中的代码:

OracleCommand cmd = new OracleCommand();
OracleDataReader dr;
cmd.CommandText = @"SELECT * FROM PERMOHONANDETAIL WHERE PERMOHONANFK = '" + buka.txtID.Text + "'";
cmd.Connection = koneksi_manual.con;
dr = cmd.ExecuteReader();
while (dr.Read())
{
    ListViewItem list = new ListViewItem(dr["PEKERJAAN"].ToString());
    list.SubItems.Add(dr["KODEPEKERJAAN"].ToString());
    list.SubItems.Add(dr["PEKERJAAN"].ToString());
    list.SubItems.Add(dr["JOBFORM"].ToString());
    list.SubItems.Add(dr["QTYORDER"].ToString());
    list.SubItems.Add(dr["TARGETPERHARI"].ToString());
    list.SubItems.Add(Convert.ToDateTime(dr["TANGGALSTART"]).ToString("dd/MM/yyyy"));
    list.SubItems.Add(Convert.ToDateTime(dr["TANGGALEND"]).ToString("dd/MM/yyyy"));
    list.SubItems.Add(dr["DURASIHARI"].ToString());
    list.SubItems.Add(dr["NOTES"].ToString());
    buka.listView1.Items.Add(list);
}
dr.Close();
buka.Focus();
buka.ShowDialog();

如何将其放入 DevExpress 的特定列 GridControl
我该如何解决这个问题??

您可以为您的行创建一个 class,并将 List<YourClass> 用作您的 GridControlDataSource
例如,您可以创建此 class:

public class GridControlItem
{
    public string KODEPEKERJAAN { get; set; }
    public string PEKERJAAN { get; set; }
    public string JOBFORM { get; set; }
    public string QTYORDER { get; set; }
    public string TARGETPERHARI { get; set; }
    public string TANGGALSTART { get; set; }
    public string TANGGALEND { get; set; }
    public string DURASIHARI { get; set; }
    public string NOTES { get; set; }
}

并在您的 GridControl 中使用它,如下所示:

OracleCommand cmd = new OracleCommand();
OracleDataReader dr;
cmd.CommandText = @"SELECT * FROM PERMOHONANDETAIL WHERE PERMOHONANFK = '" + buka.txtID.Text + "'";
cmd.Connection = koneksi_manual.con;
dr = cmd.ExecuteReader();

var list = new List<GridControlItem>();

while (dr.Read())
{
    var item = new GridControlItem();

    item.KODEPEKERJAAN = dr["KODEPEKERJAAN"].ToString();
    item.PEKERJAAN = dr["PEKERJAAN"].ToString();
    item.JOBFORM = dr["JOBFORM"].ToString();
    item.QTYORDER = dr["QTYORDER"].ToString();
    item.TARGETPERHARI = dr["TARGETPERHARI"].ToString();
    item.TANGGALSTART = Convert.ToDateTime(dr["TANGGALSTART"]).ToString("dd/MM/yyyy");
    item.TANGGALEND = Convert.ToDateTime(dr["TANGGALEND"]).ToString("dd/MM/yyyy");
    item.DURASIHARI = dr["DURASIHARI"].ToString();
    item.NOTES = dr["NOTES"].ToString();

    list.Add(item)
}
dr.Close();

gridControl1.DataSource = list;