thegreeksenergy.com
Θέλετε να αντιδράσετε στο μήνυμα; Φτιάξτε έναν λογαριασμό και συνδεθείτε για να συνεχίσετε.
Advertisement
Advertisement

Τεχνολογικές Ειδήσεις, Υποστήριξη, Διαδίκτυο, Ψυχαγωγία, Αγγελίες, Smartphones, Tablets, Games, Eπιστήμη, Free Software


  • UWP Bottom-Up Chat ListView με XAML

    3 απαντήσεις
    Δεν μπορείτε να ξεκινήσετε ένα νέο θέμα


    Επισκόπηση προηγούμενης Θ.Ενότητας Επισκόπηση επόμενης Θ.Ενότητας Πήγαινε κάτω Μήνυμα [Σελίδα 1 από 1]  

    Δημοσίευση: 1 UWP Bottom-Up Chat ListView με XAML Empty UWP Bottom-Up Chat ListView με XAML Πεμ 16 Μαρ - 22:45

    ΚΚαράπας

    ΚΚαράπας
    Pc Team

    Κερδισμένα Βραβεία :
    Επιστροφή στην κορυφή
    Φτιάχνω μια εφαρμογή UWP η οποία είναι ουσιαστικά τσατ. Το πρόβλημα μου είναι πως να κανω την listview στο XAML να ειναι bottom-up αντι για top-down. Με αλλα λογια αντι τα items να προστηθονται απο πανω προς τα κατω θελω να προστηθονται απο κατω προς τα πανω ετσι ώστε το τελευταιο μηνυμα να είναι κατω και να εχει μορφη στατ. Εχω δοκιμασει διαφορα πραγματα συμπεριλαμβανομενου του microsoft's documentation αλλα δεν μπορεσα να βρω λυση. Ο κωδικας τρεχει μια χαρα, δεν μου βγαζει κανενα ερρορ, απλα αντι για κατω προς πανω τα βγαζει πανω προς κατω. Αν ξερει κανεις κατι ας βοηθησει.

    Παρακατω εχω τον κωδικα του PageResource:

    Κώδικας:
    <DataTemplate x:Key="MessageListDataTemplate" x:DataType="disc:IMessage">
        <Border Background="#2C2F33" CornerRadius="5">
            <StackPanel Margin="5">
                <StackPanel Orientation="Horizontal" Margin="5,2,0,0">
                    <TextBlock TextAlignment="Left" Text="{x:Bind Author,Mode=OneWay}" Foreground="White" FontSize="14"/>
                    <TextBlock TextAlignment="Left" Margin="5,3,0,0" Text="{x:Bind Timestamp,Mode=OneWay,Converter={StaticResource TimeToStringConverter}}" Foreground="LightGray" FontSize="10"/>
                </StackPanel>
                <TextBlock TextAlignment="Left" Margin="10,2,0,0" TextWrapping="WrapWholeWords" Text="{x:Bind Content, Mode=OneWay}" Foreground="#99AAB5" FontSize="20" />
            </StackPanel>
        </Border>
    </DataTemplate>





    Και εδώ είναι το listview:

    Κώδικας:
    <ScrollViewer VerticalScrollBarVisibility="Auto">
        <ListView VerticalContentAlignment="Top" ItemsSource="{x:Bind ChatViewModel.MessageList, Mode=OneWay}" SelectionMode="None" ItemTemplate="{StaticResource MessageListDataTemplate}">
            <ListView.ItemContainerStyle>
                <Style TargetType="ListViewItem">
                    <Setter Property="HorizontalContentAlignment" Value="Stretch" />
                    <Setter Property="Margin" Value="0,0,5,5"/>
                </Style>
            </ListView.ItemContainerStyle>
        </ListView>
    </ScrollViewer>



    Δημοσίευση: 2 UWP Bottom-Up Chat ListView με XAML Empty Απ: UWP Bottom-Up Chat ListView με XAML Παρ 17 Μαρ - 14:09

    Μάριος

    Μάριος
    News Editor

    Κερδισμένα Βραβεία :
    Επιστροφή στην κορυφή
    Νομίζω το Alignment πρέπει να αλλάξεις φίλε και να το κάνεις από Top σε Bottom. Δηλαδή αυτό
    Κώδικας:
    VerticalContentAlignment="Top"


    να γίνει κάπως έτσι:
    Κώδικας:
    VerticalContentAlignment="Bottom"


    ή αν δεν δουλέψει αυτό λογικά θα δουλέψει αυτό:
    Κώδικας:
    [code]VerticalAlignment="Bottom"[/code]

    http://www.inforumgr.com/

    Δημοσίευση: 3 UWP Bottom-Up Chat ListView με XAML Empty Απ: UWP Bottom-Up Chat ListView με XAML Παρ 17 Μαρ - 15:04

    ΚΚαράπας

    ΚΚαράπας
    Pc Team

    Κερδισμένα Βραβεία :
    Επιστροφή στην κορυφή
    Ευχαριστω για την απαντηση αλλα το εχω δοκιμασει ηδη, επρεπε να το αφήσω down, αλλα δοκιμασε και up και το ξεχασα... Εχω δοκιμασει και τα δυο που πρότεινες... Η μονη αλλαγη που εχω κανει είναι ευγαλα το scrollviewer γιατι δεν χρειαζοταν.

    Δημοσίευση: 4 UWP Bottom-Up Chat ListView με XAML Empty Απ: UWP Bottom-Up Chat ListView με XAML Παρ 17 Μαρ - 15:05

    ΚΚαράπας

    ΚΚαράπας
    Pc Team

    Κερδισμένα Βραβεία :
    Επιστροφή στην κορυφή
    ΚΚαράπας έγραψε:Ευχαριστω για την απαντηση αλλα το εχω δοκιμασει ηδη, επρεπε να το αφήσω down, αλλα δοκιμασε και up και το ξεχασα... Εχω δοκιμασει και τα δυο που πρότεινες... Η μονη αλλαγη που εχω κανει είναι ευγαλα το scrollviewer γιατι δεν χρειαζοταν.

    Θανατος ορθογραφικα.... εβγαλα* pale

    Δημοσίευση: 5 UWP Bottom-Up Chat ListView με XAML Empty Απ: UWP Bottom-Up Chat ListView με XAML Παρ 17 Μαρ - 15:52

    atozak

    atozak
    Senior Member

    Κερδισμένα Βραβεία :
    Παλιότερο ενεργό μέλος
    Επιστροφή στην κορυφή
    τη είναι αυτό ?? εφαρμογή για android ?? εφαρμογή για pc ?? μετά θα το βγάλεις στο φόρουμ ??

    https://www.thegreeksenergy.com

    Δημοσίευση: 6 UWP Bottom-Up Chat ListView με XAML Empty Απ: UWP Bottom-Up Chat ListView με XAML Παρ 17 Μαρ - 19:52

    ΚΚαράπας

    ΚΚαράπας
    Pc Team

    Κερδισμένα Βραβεία :
    Επιστροφή στην κορυφή
    atozak έγραψε:τη είναι αυτό ?? εφαρμογή για android ?? εφαρμογή για pc ?? μετά θα το βγάλεις στο φόρουμ ??


    Προορίζετε για εφαρμογή για Windows 10 Mobile. Αν φτάσει στο επίπεδο που θέλω εννοείτε θα το κοινοποιήσω εδώ :D

    Δημοσίευση: 7 UWP Bottom-Up Chat ListView με XAML Empty Απ: UWP Bottom-Up Chat ListView με XAML Σαβ 18 Μαρ - 3:04

    ΚΚαράπας

    ΚΚαράπας
    Pc Team

    Κερδισμένα Βραβεία :
    Επιστροφή στην κορυφή
    Λοιπον ουσιαστικα το πρόβλημα ηταν πισω απο το ObservableCollection. Ο τροπος με τον οποιο ο server επεστρεφε το ObservableCollection είναι αντίθετος με την ουσιαστικη χρηση του οποτε και η παρεξηγηση (Θα ελεγα πως είναι απλα "παραβλεψη" στο API. Με αλλα λογια όταν επαιρνα την συλλογη το τελευταιο μυνημα που ειχε ληφθεί ηταν στην θεση 0 της συλλογης και το πρωτο μηνυμα που ληφθηκε (το πιο παλιο σε χρονο) ηταν στην θεση Ν (Εξαρτάτε απο το ποσα μηνυματα κατεβαζες).

    Παρατηρησα οτι όταν κατεβαζα ενα μηνυμα ξεχωριστα (πχ όταν καποιος εστελνε μηνυμα και ενεργοποιούταν το even) και το προσθετα στην συλλογη με το .add(), πηγαινε στο τελος αυτης, δηλαδή στην Ν+1 θεση. Οποτε ο βασικος λογος που δεν δουλευε είναι διοτι πολύ απλα η λιστα ηταν εξαρχής αναποδα και φορτωνοταν λαθος.

    Πλεον την γυριζω εγω και τα νεο μηνυματα φορτώνονται όπως πρεπει, ευχαριστω οσους βοηθησαν.

    Σε περιπτωση που το χρειαστεί καποιος ο κωδικας που χρησιμοποιώ για να την αντιστρέψω ειναι:

    Κώδικας:
            for (int i=0; i < messageList.Count/2; i++)
            {
                IMessage temp = messageList[i];
                messageList[i] = messageList[messageList.Count - i - 1];
                messageList[messageList.Count - i - 1]= temp;
            }


    Παρακαλω να κλειδωθεί :D


    Μήνυμα [Σελίδα 1 από 1]

    Δεν μπορείτε να ξεκινήσετε ένα νέο θέμα


    Μοιραστείτε αυτό το θέμα

    Url
    BBcode
    HTML

    Δικαιώματα σας στην κατηγορία αυτή. Δεν μπορείτε να απαντήσετε στα Θέματα αυτής της Δ.Συζήτησης