2012-03-26 18 views
0

Ich arbeite in aC# Windows-Anwendung mit VS2010 und eine lokale Datenbank mit einer Tabelle namens "Clients" .In einer meiner Formulare, ich bin mit einem BindingNavigator, um zu bearbeiten und zeigen die Einträge dieser Tabelle.Suchen button in bindingNavigator C#

Ich möchte in der Lage sein, eine "Suchen" -Schaltfläche (kombiniert mit einem Textfeld) zu erstellen, um zu jedem Datensatz durch Einfügen des Datenbankfelds der ID (etwas wie die Suchfunktion im Bericht) gehen zu können Zuschauer). Ist das möglich und wie? Vielen Dank im Voraus

+0

so etwas könnte funktionieren, aber es ist nicht. int pos = this.clientBindingSource.Find ("id", toolStripTextBox1.Text); this.clientBindingSource.Position = pos; – MarcusV

+0

eigentlich war das mein Fehler, es funktioniert perfekt – MarcusV

Antwort

1

gelöst durch einen Knopf und ein Textfeld in der Bindung Navigator erstellen und auf Click-Ereignisse i schrieb:

int pos = this.clientBindingSource.Find("id", toolStripTextBox1.Text); 
this.clientBindingSource.Position = pos; 
0

Dies könnte ein hilfreiches Beispiel für jemanden, um eine Suche in einer ähnlichen Art und Weise durchführt, die eine wollen sind Formular Dialog Option:

 private void searchButton_Click(object sender, EventArgs e) 
    { 
     //Objects to append to the Search form 
     Form searchForm = new Form(); 
     Label searchLabel = new Label(); 
     TextBox searchBox = new TextBox(); 
     Button okSearchButton = new Button(); 
     Button cancelSearchButton = new Button(); 

     //Properties 
     searchForm.Text = "Search"; 
     searchLabel.Text = "Search For:"; 
     searchBox.Text = ""; 
     okSearchButton.Text = "Search"; 
     cancelSearchButton.Text = "Cancel"; 

     //Button actions 
     cancelSearchButton.DialogResult = System.Windows.Forms.DialogResult.Cancel; 
     okSearchButton.DialogResult = System.Windows.Forms.DialogResult.OK; 
     searchForm.CancelButton = cancelSearchButton; 
     searchForm.AcceptButton = okSearchButton; 

     //Form control placement 
     searchLabel.SetBounds(9, 20, 372, 13); 
     searchBox.SetBounds(12, 36, 372, 20); 
     okSearchButton.SetBounds(228, 72, 75, 23); 
     cancelSearchButton.SetBounds(309, 72, 75, 23); 

     searchLabel.AutoSize = true; 
     searchBox.Anchor = searchBox.Anchor | AnchorStyles.Right; 
     okSearchButton.Anchor = AnchorStyles.Bottom | AnchorStyles.Right; 
     cancelSearchButton.Anchor = AnchorStyles.Bottom | AnchorStyles.Right; 

     //Set form properties 
     searchForm.ClientSize = new Size(400, 110); 
     searchForm.MinimizeBox = false; 
     searchForm.MaximizeBox = false; 

     //Add controls to the form 
     Control[] formControl = new Control[] { searchLabel, searchBox, okSearchButton, cancelSearchButton }; 
     searchForm.Controls.AddRange(formControl); 

     //Show the form 
     DialogResult dialogResult = searchForm.ShowDialog(); 

     if (searchForm.DialogResult == DialogResult.OK) 
     { 
      int pos = tableNameTestBindingSource.Find("LastName", searchBox.Text); 
      tableNameTestBindingSource.Position = pos; 
     } 
    }