我想在C#中创建简单的应用程序。应该是windowsForms app,将基于服务的数据库添加到项目中。在此,我想将表格(ID
,name
,second name
)和程序展示名称改为listBox
。将删除listBox
中选择的当前名称(将删除行)
任何人都可以帮我怎么做?我已尝试使用数据集,这是有效的,但在我关闭应用程序并再次运行它之后,表再次填满了数据。
答案 0 :(得分:3)
要将记录保存到数据库并将其加载到列表框中,您可以看到..
现在,要从列表框中删除记录,您可以像这样编码..
protected void removeButton_Click(object sender, EventArgs e)
{
if (ListBox1.SelectedItem.Text == null)
{
MessageBox.Show("Please select an item for deletion.");
}
else
{
for (int i = 0; i <= ListBox1.Items.Count - 1; i++)
{
if (ListBox1.Items[i].Selected)
{
DeleteRecord(ListBox1.Items[i].Value.ToString());
}
}
string remove = ListBox1.SelectedItem.Text;
ListBox1.Items.Remove(remove);
}
}
也可以从数据库中删除该记录,如下所示..
private void DeleteRecord(string ID)
{
SqlConnection connection = new SqlConnection("YOUR CONNECTION STRING");
string sqlStatement = "DELETE FROM Table1 WHERE Id = @Id";
try
{
connection.Open();
SqlCommand cmd = new SqlCommand(sqlStatement, connection);
cmd.Parameters.AddWithValue("@Id", ID);
cmd.CommandType = CommandType.Text;
cmd.ExecuteNonQuery();
}
catch (System.Data.SqlClient.SqlException ex)
{
string msg = "Deletion Error:";
msg += ex.Message;
throw new Exception(msg);
}
finally
{
connection.Close();
}
}