Kode untuk tombol pertama berikutnya terakhir sebelumnya dan menampilkan data di halaman aplikasi windows C#

pemrograman


Hai,
saya membuat aplikasi windows c#. di mana saya meletakkan tombol seperti pertama, berikutnya, terakhir, sebelumnya.
sekarang saya ingin menampilkan pengambilan catatan dari database, dan menampilkannya di halaman.
ketika saya mengklik tombol pertama maka pada tampilan data waktu muat terlebih dahulu. ketika saya mengklik terakhir maka data menampilkan catatan terakhir, ketika saya mengklik sebelumnya maka tampilan data sebelumnya, dan ketika saya mengklik berikutnya maka menampilkan data berikutnya di aplikasi c# windows.
tolong bantu saya…

Apa yang saya coba:

saya mencoba membuat kode, tetapi tidak berhasil. bagaimana saya bisa menggunakan loop for untuk menggunakannya dan menampilkan data pada waktu buka halaman.

Solusi 2

gunakan contoh ini untuk membuat Formulir Anda

C#
public partial class Form1 : Form
   {

       public Form1()
       {
           InitializeComponent();
       }

       DataTable dt = new DataTable();
       int index = 0;
       int last = 0;

       private void Form1_Load(object sender, EventArgs e)
       {
           dt.Columns.Add("FirstName");
           dt.Columns.Add("LastName");

           dt.Rows.Add("Moto", "Nexus");
           dt.Rows.Add("Apple", "Iphone");
           dt.Rows.Add("Sony", "Vaio");
           dt.Rows.Add("Samsung", "Edge");

           index = 0;
           last = dt.Rows.Count -1;
           PopulateData();
       }

       private void btnFirst_Click(object sender, EventArgs e)
       {
           index = 0;
           PopulateData();
       }
       private void btnLast_Click(object sender, EventArgs e)
       {
           index = last - 1;
           PopulateData();
       }
       private void btnPrev_Click(object sender, EventArgs e)
       {
           index--;
           index = index <0? 0:index;
           PopulateData();
       }
       private void btnNext_Click(object sender, EventArgs e)
       {
           index++;
           index = index > last? last : index;
           PopulateData();
       }

       private void PopulateData()
       {
           DataRow row = dt.Rows[index];
           string firstName = row["FirstName"].ToString();
           string lastName = row["LastName"].ToString();
           txtFirstName.Text = firstName;
           txtLastName.Text = lastName;

       }
   }

Solusi 29

tombol void pribadi15_Click_1(pengirim objek, EventArgs e)
{

SqlConnection con = new SqlConnection(dbFunctions.connectionstring);
mencoba
{
con.Open();
SqlCommand com = baru SqlCommand();
com.Koneksi = con;
com.CommandType = CommandType.Teks;

jika (ID == “0” )
{
if (textMname.Teks != “” && textqty.Teks != “”)
{

DataTable dd = dbFunctions.getTable(“pilih isnull(max(NO),0)+1 dari medis”);
if (dd.Rows.Count > 0)
{
ID = dd.Baris[0][0].ToString();
}
com.CommandText = “masukkan ke dalam Nilai medis (NO,@M_Name,Qty,Patient,Dises,Remark,UNO,STATUS) (@NO,@M_Name,@Qty,@Patient,@Dises,@Remark,@UNO,@STATUS )”;
//Ketik = “BARU”;
}
kalau tidak
{
MessageBox.Show(“Nama dan jumlah tidak boleh nol”);
}

}
kalau tidak
{
if (textMname.Teks != “” && textqty.Teks != “”)
{
com.CommandText = “perbarui medis Set M_Name=@M_Name,Qty=@Qty,Patient = @Patient,Dises=@Dises,Remark=@Remark,UNO = @UNO Where NO=@NO “;
//Ketik = “EDIT”;
}
kalau tidak
{
MessageBox.Show(“Nama dan jumlah tidak boleh nol”);
}

}

com.Parameters.Add(“@NO”, SqlDbType.VarChar).Value = ID.ToString();
com.Parameters.Add(“@UNO”, SqlDbType.VarChar).Value = textUNO.Text;
com.Parameters.Add(“@M_Name”, SqlDbType.VarChar).Value = textMname.Text;
com.Parameters.Add(“@Qty”, SqlDbType.VarChar).Value = textqty.Text;
com.Parameters.Add(“@Patient”, SqlDbType.VarChar).Value = pasien.Teks;
com.Parameters.Add(“@Dises”, SqlDbType.VarChar).Value = textDises.Text;
com.Parameters.Add(“@Remark”, SqlDbType.VarChar).Value = textRemarks.Text;
com.Parameters.Add(“@STATUS”, SqlDbType.Char).Value=”A”;

com.ExecuteNonQuery();
com.Koneksi.Tutup();
MessageBox.Show(“Detail Berhasil Disimpan”, “Berhasil”, MessageBoxButtons.OK, MessageBoxIcon.Information);

menampilkan();
jernih();
this.ActiveControl = textMname;
}
menangkap (Pengecualian Ex)
{
//dbFunctions.Logs(Contoh.Pesan, dbFunctions.nama pengguna);
MessageBox.Show(Mis.Pesan, “Kesalahan”, MessageBoxButtons.OK, MessageBoxIcon.Error);
}

}

tombol void pribadi17_Click_1(pengirim objek, EventArgs e)
{

jernih();

}
kekosongan pribadi jelas()
{
ID = “0”;
//teksUNO.Teks = “”;

//teksPname.Teks = “”;
textMname.Teks = “”;
textqty.Teks = “”;
// textDises.Teks = “”;
//teksKeterangan.Teks = “”;

}

private void dataGridView6_CellContentClick_1(pengirim objek, DataGridViewCellEventArgs e)
{
mencoba
{
jika (e.ColumnIndex == 0)
{
ID = dataGridView6.Baris[e.RowIndex].Sel[“NO”].Nilai.ToString();
DataTable dt = dbFunctions.getTable(“pilih * dari medis di mana NO='” + ID.ToString() + “‘”);
if (dt.Baris.Jumlah > 0)
{
//if (dbfunction.Cabang != “0”)
//{
// cmb_Branch.Text = dataGridView1.Rows[e.RowIndex].Sel[“Branch”].Nilai.ToString();
//}
textMname.Text = dt.Baris[0][“M_Name”].ToString();
textUNO.Text = dt.Baris[0][“UNO”].ToString();
textqty.Teks = dt.Baris[0][“Qty”].ToString();
pasien.Teks = dt.Baris[0][“Patient”].ToString();
textDises.Teks = dt.Baris[0][“Dises”].ToString();
textRemarks.Text = dt.Baris[0][“Remark”].ToString();
// textvnumber.Text = dt.Baris[0][“VNUMBER”].ToString();

}
kalau tidak
{
//id = 0;
}

}
if (e.ColumnIndex == 1)
{
Hasil DialogResult = MessageBox.Show(“Apakah Anda Ingin Menghapus Detail Dealer Tekan YES”, “Alcove”, MessageBoxButtons.YesNo, MessageBoxIcon.Information);
if (hasil == DialogResult.Ya)
{
dbFunctions.getTable(“perbarui set medis STATUS=’D’ di mana NO='” + dataGridView6.Rows[e.RowIndex].Sel[“NO”].Nilai.ToString() + “‘”);
menampilkan();
}
}

}
menangkap { }

}

private void label6_Click(pengirim objek, EventArgs e)
{

}

tombol void pribadi16_Click_1(pengirim objek, EventArgs e)
{
hapus1();
ambil_uniq_no();
menampilkan();

}
kekosongan pribadi clear1()
{
ID = “0”;

//teksPname.Teks = “”;
teksUNO.Teks = “”;
textMname.Teks = “”;
textqty.Teks = “”;
textDises.Teks = “”;
teksKeterangan.Teks = “”;

}

private void textRemarks_TextChanged(pengirim objek, EventArgs e)
{

}

kekosongan publik ambil_uniq_no()
{
DataTable dt = dbFunctions.getTable(“select ‘” + dbFunctions.Finance_Year + “https://www.codeproject.com/”+’UE’+right(‘0000’+cast(isnull(max(cast(right(UNO ,4) sebagai int)),0)+1 sebagai varchar),4) sebagai Tidak dari medis di mana left(UNO,5)='” + dbFunctions.Finance_Year + “‘”);
if (dt.Baris.Jumlah > 0)
{
textUNO.Text = dt.Baris[0][0].ToString();
}
}

Ini pertanyaan saya
bagaimana cara menambahkan tombol sebelumnya

Solusi 7

Mengutip:

Munculnya kontrol BindingNavigator di Windows Forms memungkinkan pengembang menyediakan navigasi data sederhana dan antarmuka pengguna manipulasi pada formulir yang mereka buat kepada pengguna akhir.

Menavigasi Data dengan Kontrol BindingNavigator – Windows Forms .NET Framework | Microsoft Dokumen[^]

Solusi 1

Anda tidak menggunakan loop.
Cara tepatnya melakukan hal ini bergantung pada sejumlah faktor, seperti cara Anda mengambil data, berapa banyak data yang terlibat, dan apa sebenarnya isi DB Anda.
Tapi salah satu caranya adalah:
Pastikan DB Anda berisi kolom Id, dengan IDENTITAS.
Siapkan int tingkat kelas di DB Anda yang disebut lastRow dan setel ke -1.
Saat Anda mengambil satu baris dari DB untuk ditampilkan, gunakan sesuatu seperti:

SQL
SELECT TOP 1 * FROM MyTable WHERE Id > lastRow ORDER BY ID ASC

Jika Anda mendapatkan baris apa pun, muat lastRow dengan nilai ID.
Untuk “Berikutnya” permintaannya sama.
Untuk sebelumnya:

SQL
SELECT TOP 1 * FROM MyTable WHERE Id < lastRow ORDER BY ID DESC

Pertama:

SQL
SELECT TOP 1 * FROM MyTable ORDER BY ID ASC

Pertama:

SQL
SELECT TOP 1 * FROM MyTable ORDER BY ID DESC

コメント

タイトルとURLをコピーしました