ASP.NET DataSource & GridView ligação de dados, definindo um valor de parâmetro programaticamente

StackOverflow https://stackoverflow.com/questions/1044186

Pergunta

Então, eu tenho um GridView com um ObjectDataSource, e eu quero um programaticamente conjunto dos SelectParameters do ObjectDataSource.

Eu tentei (durante tanto Page_Load e DropdownList__SelectedIndexChanged)

objectDataSource.SelectParameters["my_parameter"].DefaultValue = "my_value";
objectDataSource.DataBind();

mas não funcionou. O que você sugere?

Foi útil?

Solução

Armadilha do evento OnSelecting na fonte de dados.

protected void ObjectDataSource1_Selecting(object sender, ObjectDataSourceSelectingEventArgs e)
{
    e.InputParameters["month"] = DateTime.Now.Month;
}

Outras dicas

Não importa, eu resolvi eu mesmo.

Em Page_Load:

objectDataSource.Selecting += new ObjectDataSourceSelectingEventHandler(objectDataSource_Selecting);

Em seguida, escreva o método manipulador:

void objectDataSource_Selecting(object sender, ObjectDataSourceSelectingEventArgs e)
{
    int four = 2 + 2;
    e.InputParameters["my_parameter"] = four;
}

Em seguida, certifique-se de vincular a algum lugar GridView

protected void dropDownList_SelectedIndexChanged(object sender, EventArgs e)
{
    gridView.DataBind();
}
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top