0
listview에서 하나의 데이터베이스 레코드를 삭제하고 삭제 한 후 listView1.selectedindex 속성을 사용하여 내 listview에서 탐색하려고했지만 잘못된 레코드가 강조 표시되었습니다 예를 들어 listView1.selectedindex를 1로 설정했지만 인덱스가 0 인 레코드를 표시합니다. 뭐가 잘못 되었 니? 도와주세요!ASP.NET Listview.selectedindex 속성이 복잡해졌습니다
protected void deleteButton_Click(object sender, EventArgs e)
{
int id = int.Parse(((Label)ListView1.Items[ListView1.SelectedIndex].FindControl("idLabel")).Text);
using (SqlConnection conn = new SqlConnection(connStr))
{
string Sql = "delete from Employee where id = @id";
conn.Open();
using (SqlCommand dCmd = new SqlCommand(Sql, conn))
{
dCmd.Parameters.AddWithValue("@id", id);
dCmd.ExecuteNonQuery();
}
conn.Close();
}
BindDataFromBaseToListView();
}
BindDataFromBaseToListView 방법은 너무 같습니다
대신 선택한 행의 값을 가져 당신이 아래의 코드처럼 원하는 항목을 삭제하는 당신이 당신의 ListView의OnItemCommand
이벤트를 사용할 수
deleteButton_Click
이벤트를 사용
private void BindDataFromBaseToListView()
{
using (SqlConnection conn = new SqlConnection(connStr))
{
conn.Open();
using (SqlDataAdapter dAd = new SqlDataAdapter("select * from Employee", conn))
{
DataTable dTable = new DataTable();
dAd.Fill(dTable);
ListView1.DataSourceID = null;
ListView1.DataSource = dTable;
ListView1.DataBind();
}
conn.Close();
}