У меня есть 2 сетки, grid1
и grid2
.
grid2
будет заполняться в зависимости от того, какая строка нажата в grid1
. Я сделал это путем связывания OnSelectedIndexChanged
из grid1
.
Но при загрузке страницы grid2
будет пуст, так как выбор строки не производится.
Поэтому я планировал grid1
выбор строки grid1
с использованием кода С#, чтобы обе сетки имели данные при загрузке страницы.
Я начал кодировать как.
grid1.DataSource = versions.DefaultView;
grid1.SelectedIndex = 0;
grid1.DataBind();
Но это событие не стреляет. Может ли кто-нибудь помочь мне в решении этой проблемы?
Вы можете просто вызвать метод программно.
grid1.DataSource = versions.DefaultView;
grid1.SelectedIndex = 0;
grid1.DataBind();
grid1_SelectedIndexChanged(grid1, new EventArgs());
Вам не нужно событие на 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.
}