Что касается реализации окна поиска, простой подход состоит в использовании стандартного TextBox с сопровождающей кнопкой для поиска текста, предоставленного после его ввода.
Вот пример того, как вы можете обрабатывать этот ввод с помощью TextBox с именем textbox , в зависимости от того, как настроена ваша база данных / структура данных.
Допустим, вы имел данные вашего клиента в таблице , где ключ для каждого набора деталей - это строка , представляющая идентификационный номер этого клиента, а сохраненное значение является экземпляром класса Подробности , который содержит любую информацию об этом клиенте. ie, добавление в эту таблицу будет выглядеть так ...
customerDetailsTable.Add("0123456", new Details(string Name, int age, .......))
Код может выполнять поиск в этом текстовом поле, а кнопка может выглядеть примерно так:
private void searchButton_Click(object sender, EventArgs e) // <-- click event for button
{
if(textBox.Text.Length > 0) // <-- if something has been entered to search
{
Details customerDetails = customerDetailsTable[textBox.Text]; // search table
if(customerDetails != null) // <-- if an entry exists for a customer of this ID
{
using(DetailsPage page = new DetailsPage(customerDetails))
{
page.ShowDialog();
}
}
else // <-- if NO entry exists for a customer of this ID
{
// ALERT USER THAT NO CUSTOMER EXISTS FOR THIS ID (via MessageBox, however)
}
}
}
Как вы можете видеть в приведенном выше примере, если объект, содержащий сведения об этом идентификаторе клиента, найден, он передается через конструктор в новую форму, которую я назвал DetailsPage. Это форма, которую вы создадите для отображения этих сведений, используя один параметр Details в конструкторе формы, например ...
public partial class DetailsPage : Form
{
private Details deets;
public DetailsPage(Details d)
{
deets = d;
// however you plan on displaying the details
}
}