Ciao,
Nella realizzazione di una pagina web uso un DataList per visualizzare i dati restituiti da una query. Tuttavia, una volta creato il dataset e legato alla datalist, ho dei problemi nel "creare" a livello di codice i "figli" ItemTemplate e SelectedItemTemplate (dato che vorrei che cliccando su un titolo si apra uno spazio con i dettagli).
QUi di seguito è il codice che uso per deinire il dataset:
public DataSet createDataSet(string sqlQuery)
{
SqlConnection dbConn = new SqlConnection(ConfigurationManager.AppSettings["ConnectionString"]);
SqlCommand command = new SqlCommand();
command.CommandText = sqlQuery;
command.Connection = dbConn;
DataSet dataSet = new DataSet();
SqlDataAdapter adapter = new SqlDataAdapter(command);
adapter.Fill(dataSet);
return dataSet;
}
Che poi invoco così:
code]
// Load sample data only once, when the page is first loaded.
if (!IsPostBack)
{
DataSet ds = UtilityClass.getInstance().createDataSet(query);
DataList list = new DataList();
list.ID = "ItemsList";
list.DataSource = ds;
list.DataBind();
list.RepeatLayout = RepeatLayout.Table;
list.SelectedItemStyle.BackColor = "Yellow";
//list.SelectedItemTemplate = ???
//list.ItemTemplate = ???
}
[/code]
Tutti gli esempi che ho visto usano lo script inline e creano i tag <ItemTemplate> in maniera statica e cosi' sarebbe facile.
A me invece serve crearli in modo dinamico a run time (quindi all'interno di una classe c#) e inserire poi tutta la dataList in un PlaceHolder.
Come posso fare per aggiungere da codice (C#) i due template?
Grazie di nuovo.