Γεια σας παιδια,φτιάχνω την 1η μου σελίδα σε asp και έχω μια basic ερώτησηστην page_load έχω αυτό:
protected void Page_Load(object sender, EventArgs e)
{
LoadSqlDatas();
LoadLB();
//loadtmp();
}
η LoadSqlDatas φορτώνει απο ένα webservice ένα datatable με μεγάλο αριθμό rows.
η LoadLB γεμίζει 2 listbox που έχω μέσα. Στην συνέχεια έχω βάλει ένα κουμπί και όταν ο χρήστης το πατάει τότε κανω διαφορους υπολογισμούς απο το datatable και τα εμφανίζω σε ένα chart στην οθόνη.
1) Στο τέλος της διαδικασίας βλέπω ότι, για καποιο λόγω ξανα τρέχει η page_load γιατί ξαναβλέπω sql query στον sql ενώ δεν έπρεπε να υπάρχει αυτό. Επίσης επειδή τα listbox τα γεμίζω με loop και δεν τα αδειάζω ποτέ βλέπω ότι παίρνουν 2-3-4 φορές τιμες όσες φορες δηλαδή πατησα το κουμπί εκτέλεσης.
2) Πως μπορώ να έχω το chart width όσο πλάτος έχει και η οθόνη του χρήστη; Αν έχει κινητό θα κανει scale μονο του ή θα πρέπε να του το πω;
private void LoadDatas()
{
DataTable tmpDT = dt.Select("fyeid = 2012 and braid = 1").CopyToDataTable();
Chart1.Width = Request.Browser.ScreenPixelsWidth;
Chart1.Series[0].Name = "Τζίρος Πωλήσεων";
Chart1.Series[0].IsValueShownAsLabel = true;
Chart1.Series[0].Points.Clear();
for (int i = 0; i < tmpDT.Rows.Count; i++)
{
Chart1.Series[0].Points.AddXY(i + 1, Convert.ToDouble(tmpDT.Rows
["trnvalue"]));
}
}
protected void Button1_Click(object sender, EventArgs e)
{
LoadDatas();
}
Ευχαριστώ