Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

Πώς καλώ web control το οποίο είναι θαμμένο μέσα σε template του GridView?

Îåêßíçóå áðü ôï ìÝëïò gspiros. Τελευταία δημοσίευση από το μέλος KelMan στις 27-03-2007, 19:04. Υπάρχουν 4 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  24-03-2007, 02:51 26967

    Πώς καλώ web control το οποίο είναι θαμμένο μέσα σε template του GridView?

    Θέλω να αλλάξω μέσω κώδικα (C#) το text και άλλα properties ενός Label, το οποίο βρήσκεται μέσα σε template του GridView.
    Συγκεκριμένα:

    <asp:GridView ID="GridView1" runat="server">
    <Columns>

    <asp:TemplateField HeaderText="Info">
        <ItemTemplate>
            <asp:Label ID="lblInforunat="server">
            </asp:Label>
        </ItemTemplate>
    </asp:TemplateField>

    </Columns>
    </asp:GridView>

    Από την βάση (SQL Server 2005) επιστρέφεται true/false και θέλω αναλόγως το bit, το lblInfo.Text να αλλάζει μέσω κώδικα.
    Το παρακάτω πάντως δεν δουλεύι:
    GridView1.lblInfo.Text="μπλα"; //γιατί δεν δουεύει???
    Πώς γίνεται αυτό που ρωτάω ρε παιδιά?

    Επίσης μέσω αρχείου .aspx που περιέχει ένα ContentPlaceHolder, πώς μπορώ να αλλάζω το Text ενός Label που βρήσκεται στην MasterPage?
    (αυτή η ερώτηση μάλλον δεν κολλάει εδώ...)
    Εωχαριστώ εκ των προτέρων.
  •  26-03-2007, 18:55 27094 σε απάντηση της 26967

    Απ: Πώς καλώ web control το οποίο είναι θαμμένο μέσα σε template του GridView?

    Λοιπόν, βρήκα την λύση:
    http://www.odetocode.com/Articles/116.aspx

    Όσον αφορά στην ερώτηση με το MasterPage, το μόνο που χρειάζεται μέσα στο ContantPlaceHolder είναι:
    Label lblMaster = this.Master.FindControl("Label1") as Label;
  •  27-03-2007, 10:29 27131 σε απάντηση της 27094

    Απ: Πώς καλώ web control το οποίο είναι θαμμένο μέσα σε template του GridView?

    Ο τρόπος που βρήκες είναι σωστός.

    Παρ' όλα αυτά, να σου πώ ότι θα πρέπει να αποφύγεις σαν το διάβολο το λιβάνι τέτοιες πρακτικές για να δείχνεις αποτελέσματα, υπολογισμούς και γενικά αποτελέσματα διεργασιών, καθώς θα καταλήξεις με μια σελίδα με κάπου 1000 γραμμές και τον κώδικα τελείως μη διαχειρίσιμο.

    Για αυτά θα πρέπει να χρησιμοποιείς κάποιο object το οποίο μπορείς να αποθηκεέυεις στο session και στη συνέχεια απλά να περνάς την τιμή του property στο label, κατά προτίμηση μέσα σε κάποιο event του ίδιου του label πχ prerender, ώστε να μπορείς να το βρίσκεις και εύκολα.


    Simple Photography
  •  27-03-2007, 18:34 27179 σε απάντηση της 27131

    Απ: Πώς καλώ web control το οποίο είναι θαμμένο μέσα σε template του GridView?

    Έχεις δίκιο, μόνο που δουλεύοντας με Session, μου προέκυψε ένα πρόβλημα.

    Αν θέλω να αλλάζω το Label από διαφορετικές συναρτήσεις "ταυτόχρονα", τότε πως θα το κάνω με Session?
    Εννοώ ότι αν θέσω αρχικά
    Session["Errors"]="Wrong Password";

    και χρειαστεί να θέσω και από κάποια άλλη συνάρτηση
    Session["Errors"]="Error on Sql Server";   //αυτό μπορεί να είναι ένα Exception;

    ή οτιδήποτε τέλος πάντων...
    (αυτό φυσικά πρίν γίνει το load της MasterPage)

    Λοιπόν, αυτό που προσπαθώ να κάνω είναι να αλλάζω το lblErrors (το οποίο υπάρχει στην MasterPage), αναλόγως τα λάθη.
    Αν συμβούν 2 λάθη, θα πρέπει να εμφανίζονται και τα 2, ότι μόνο η τελευταία ανάθεση...

    Με χρήση του Session, προφανώς θα εμφανίζεται μόνο το τελευταίο μήνυμα.
    Έχετε καμία λύση?
  •  27-03-2007, 19:04 27185 σε απάντηση της 27179

    Απ: Πώς καλώ web control το οποίο είναι θαμμένο μέσα σε template του GridView?

    Δεν σε εμποδίζει τίποτα να κάνεις concatenate τα errors. Ή μπορείς αντί να αποθηκεύεις strings μέσα στο session, να αποθηκεύεις ένα ArrayList από string του οποίου θα εμφανίζεις τα περιεχόμενα με ένα μικρό loop όταν έρθει η ώρα.


    Vir prudens non contra ventum mingit
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems