432 messaggi dal 31 gennaio 2007
Ciao a tutti.
come posso modificare ilvalore di un parametro che untilizzo in una select di un object datasource da code...

ObjectDataSource srcControllo = (ObjectDataSource)this.FindControl("srcControllo");
srcControllo.SelectParameters.Add("ctg", idCTG);
srcControllo.DataBind();

idCTG viene passato ed eè un numero..

ma da sempre errore...

grazie..
Ciao, puoi modificare i valori dei parametri gestendo l'evento Selecting:
protected void ObjectDataSource1_Selecting(object sender, ObjectDataSourceSelectingEventArgs e) 
{ 
    e.InputParameters["sample"] = "pippo"; 
} 

Alessio Leoncini (SilverlightItalia.com)
.NET Developer, Interactive Designer, UX Specialist, Trainer @ 5DLabs.it
432 messaggi dal 31 gennaio 2007
Grazie novecento avevo già pensato alla tua soluzione..
ora il problema è un'altro

questo ods si deve popolare ogni volta che seleziono una riga di un gidview
premesso che l'ods si trova in un usercontrol ci arrivo la prima volta che è = 0;
poi alla selezione dal grid non viene più aggiornato

protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
{
GridView _frm = (GridView)sender;
GestPriorita1.idCTG = Convert.ToInt32(_frm.DataKeys[_frm.SelectedIndex].Values[0]);
}

Ciao
Se GestPriorita1 è l'UserControl, potresti valorizzare una proprietà di appoggio, scatenare l'evento Selecting dell'ODS richiamando il metodo Select(), gestire l'evento e aggiornre il valore del parametro con il valore della proprietà di appoggio.

Alessio Leoncini (SilverlightItalia.com)
.NET Developer, Interactive Designer, UX Specialist, Trainer @ 5DLabs.it
432 messaggi dal 31 gennaio 2007
grazie novecento ma sinceramente non saprei come approntare la questione...
ti dico quello che ho fatto:

GestPriorita1 è uno Usercontrol

con nel .cs

private int _idctg;
public int idCTG
{
get { return _idctg; }
set { _idctg = value; }
}
protected void Page_Load(object sender, EventArgs e)
{

}
public void srcControllo_Selecting(object sender, ObjectDataSourceSelectingEventArgs e)
{
if (idCTG != 0)
{
e.InputParameters["ctg"] = idCTG;
}
}

e nella pagina che lo contiene

protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
{
GridView _frm = (GridView)sender;
GestPriorita1.idCTG = Convert.ToInt32(_frm.DataKeys[_frm.SelectedIndex].Values[0]);
}

cosa dovrei fare....

Grazie ancora...
Prova così:
protected void GridView1_SelectedIndexChanged(object sender, EventArgs e) 
{ 
GridView _frm = (GridView)sender; 
GestPriorita1.idCTG = Convert.ToInt32(_frm.DataKeys[_frm.SelectedIndex].Values[0]); 
GestPriorita1.srcControllo.Select();
} 

Modificato da novecento il 04 luglio 2008 23.08 -

Alessio Leoncini (SilverlightItalia.com)
.NET Developer, Interactive Designer, UX Specialist, Trainer @ 5DLabs.it
432 messaggi dal 31 gennaio 2007
mi dà questo errore:

'wuc_admin_gestPriorita.srcControllo' è inaccessibile a causa del livello di protezione.

grazie
Si scusa, dovresti prima trovare l'ObjectDataSource:
ObjectDataSource srcControllo = GestPriorita1.FindControl("srcControllo") as ObjectDataSource;
srcControllo.Select(); 

Alessio Leoncini (SilverlightItalia.com)
.NET Developer, Interactive Designer, UX Specialist, Trainer @ 5DLabs.it

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.