如何使用c#代码触发GridView的SelectedIndexChanged

时间:2014-08-20 05:28:07

标签: c# asp.net gridview

我有2个网格,grid1grid2

grid2将根据grid1中点击的行进行填充。我是通过绑定OnSelectedIndexChanged的{​​{1}}来完成的。

但是在页面加载时,grid1将为空,因为没有进行行选择 所以我计划使用c#代码触发grid2的行选择,这样两个网格都将在页面加载时获得数据。

我已经开始编码了。

grid1

但事件并未触发。 任何人都可以帮我解决这个问题吗?

2 个答案:

答案 0 :(得分:1)

您不需要Page_Load上的活动,因为您已经知道第一个网格的选定索引应该是什么。用户与页面交互后需要该事件。仅DataBind() Page_Load上的第二个网格,其数据对应于第一个网格的0选定索引,与您对第一个网格进行数据绑定的方式相同。

if (!IsPostBack)
{
    grid1.DataSource = versions.DefaultView;
    grid1.SelectedIndex = 0;
    grid1.DataBind();
    DataBindGridByIndex(0);
}
else
{
    grid1.DataSource = versions.DefaultView;
    grid1.DataBind();
}

public void DataBindGridByIndex(int index)
{
    // Logic to databind second grid by selected index.
}

答案 1 :(得分:1)

您可以通过编程方式调用该方法。

grid1.DataSource = versions.DefaultView;
grid1.SelectedIndex = 0;
grid1.DataBind();

grid1_SelectedIndexChanged(grid1, new EventArgs());