У меня есть несколько методов, которые перечисляют различные детали в нескольких списках, которые можно добавить к клиенту, например, разные преступления. Приведенный ниже метод выбирает все преступления из таблицы CriminalRecord, где ClientId = идентификатор выбранного клиента , а затем заполняет список listCriminalRecord
этими данными.
private void PopulateCriminalRecord()
{
string query = "SELECT * FROM CriminalRecord " +
"a INNER JOIN ClientCriminalRecord b ON a.Id = b.CriminalRecordId " +
"WHERE b.ClientId = @ClientId ORDER BY Crime ASC";
using (connection = new SqlConnection(connectionString))
using (SqlCommand command = new SqlCommand(query, connection))
using (SqlDataAdapter adapter = new SqlDataAdapter(command))
{
command.Parameters.AddWithValue("@ClientId", newId);
DataTable dTable = new DataTable();
adapter.Fill(dTable);
listCriminalRecord.DisplayMember = "Crime";
listCriminalRecord.ValueMember = "Id";
listCriminalRecord.DataSource = dTable;
}
}
Когда пользователь заканчивает вводить данные клиента, он нажимает кнопку, получает сообщение с сообщением и т. Д. И т. Д.
private void btnFinish_Click(object sender, EventArgs e)
{
DialogResult result = MessageBox.Show("Are you sure you've finished & filled in all of the Client's details?", "Save and exit", MessageBoxButtons.YesNo);
if (result == DialogResult.Yes)
{
DisableStep2();
EnableStep1();
}
}
Метод EnableStep1();
просто включает и очищает некоторые текстовые поля, а метод DisableStep2();
делает то же самое, но отключает некоторые текстовые поля. После этого я хочу, чтобы все списки были сброшены / очищены. Я пытался listCriminalRecord.Items.Clear()
, но это выражает ошибку. Я не уверен, как это сделать.
Любая помощь будет фантастической.