Ich verwende den folgenden Code, um meine datagridview
und die select
Anweisung zu binden, um die Datensätze zu bekommen, die ich brauche.Filter durch Eingabe in Textfeld
Alles funktioniert gut in diesen Codezeilen, aber ich möchte die Datensätze automatisch filtern, wenn der Benutzer etwas in textbox
eingibt und beim Löschen der Daten die Datensätze in den Ausgangszustand zurückkehren, wenn das Formular geladen wird. Könnte mir jemand ein paar Tipps geben?
Hier ist mein Code:
public nir()
{
InitializeComponent();
nir_load();
}
void nir_load()
{
string cs = "Data Source=IS020114\\CODRINMA;Initial Catalog=gcOnesti;Integrated Security=True";
string select = "select p.cod as Numar, p.data as Data, p.doc_cod as NrDocFurnizor, g.nume as Gestiune, c.nume as Furnizor, p.validat as Validat, p.facturat as Contat from primar p inner join gestiuni g on p.part2=g.gest_id inner join cf c on p.part1=c.cf_id where p.tip=2";
using (SqlConnection con = new SqlConnection(cs))
{
SqlCommand cmd = new SqlCommand(select, con);
con.Open();
SqlDataAdapter sda = new SqlDataAdapter();
sda.SelectCommand = cmd;
DataTable dt = new DataTable();
sda.Fill(dt);
BindingSource bs = new BindingSource();
bs.DataSource = dt;
dataGridView1.DataSource = bs;
}
}
private void btnSearch_Click(object sender, EventArgs e)
{
string cs = "Data Source=IS020114\\CODRINMA;Initial Catalog=gcOnesti;Integrated Security=True";
string select = "select p.cod as Numar, p.data as Data, p.doc_cod as NrDocFurnizor, g.nume as Gestiune, c.nume as Furnizor, p.validat as Validat, p.facturat as Contat from primar p inner join gestiuni g on p.part2=g.gest_id inner join cf c on p.part1=c.cf_id where cod='" +txtnr.Text+"' and data='" + dtpData.Value.ToString("yyyy-MM-dd") +"' and p.tip=2";
using (SqlConnection con = new SqlConnection(cs))
{
SqlCommand cmd = new SqlCommand(select, con);
con.Open();
SqlDataAdapter sda = new SqlDataAdapter();
sda.SelectCommand = cmd;
DataTable dt = new DataTable();
sda.Fill(dt);
BindingSource bs = new BindingSource();
bs.DataSource = dt;
dataGridView1.DataSource = bs;
}
}
In derselben Situation habe ich jQuery verwendet. Auf meiner Seite gab es ein Eingabefeld und darunter eine div-table, die Daten von SQL Server lädt. Wenn Benutzer etwas in das Eingabefeld eingeben, wird die folgende Tabelle basierend auf Benutzereingaben gefiltert. – gofr1
Bitte klären Sie: Möchten Sie suchen, wie der Titel impliziert oder filtern, wie Ihre Beschreibung tut. Beide werden hier recht oft beantwortet. – TaW
@TaW - zum Filtern habe ich mich falsch erklärt. Aber ich konnte das mit dem 'KeyUp' -Ereignis machen. – cdrrrrrr