下面是一个示例代码,演示了如何在Asp.NET GridView中只显示最新一行的删除选项,并且在单选按钮的选中索引更改时,能够查看相同的选项并填充数据。
首先,创建一个GridView并添加一个TemplateField来显示删除选项。在TemplateField中,我们将使用一个LinkButton来执行删除操作。
接下来,在代码后端中,我们需要绑定GridView的数据源,并为GridView的SelectedIndexChanged事件和LinkButton的Click事件添加处理程序。
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
BindGrid();
}
}
private void BindGrid()
{
// 绑定GridView的数据源
DataTable dt = GetDataSource();
GridView1.DataSource = dt;
GridView1.DataBind();
}
protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
{
// 在单选按钮的选中索引更改时,查看相同的选项并填充数据
int selectedRowIndex = GridView1.SelectedIndex;
if (selectedRowIndex >= 0 && selectedRowIndex < GridView1.Rows.Count)
{
// 获取选中行的数据
GridViewRow selectedRow = GridView1.Rows[selectedRowIndex];
string id = selectedRow.Cells[0].Text;
string name = selectedRow.Cells[1].Text;
// 填充数据到其他控件
txtID.Text = id;
txtName.Text = name;
}
}
protected void lnkDelete_Click(object sender, EventArgs e)
{
// 执行删除操作
LinkButton lnkDelete = (LinkButton)sender;
string id = lnkDelete.CommandArgument;
// 调用删除数据的方法
DeleteData(id);
// 重新绑定GridView
BindGrid();
}
在这个示例中,我们假设有一个名为GetDataSource()的方法来获取GridView的数据源,一个名为DeleteData(string id)的方法来执行删除操作。你需要根据你的实际情况来实现这些方法。
这样,当你选中GridView中的某一行时,相关的数据将自动填充到其他控件中。你也可以点击每行中的“Delete”链接来执行删除操作,并重新绑定GridView。