<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://www.dotnetzone.gr:443/cs/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Πρώτα Βήματα - Αρχές προγραμματισμού</title><link>https://www.dotnetzone.gr:443/cs/forums/72/ShowForum.aspx</link><description>Αναρωτιέστε τι σημαίνει object; Class; Inheritance; Design pattern; Την απάντηση μπορείτε να την βρείτε εδώ!</description><dc:language>el</dc:language><generator>CommunityServer 2.1 SP3 (Build: 20423.1)</generator><item><title>Απ: Μεταξύ δύο μεταβλητών...</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/69858.aspx</link><pubDate>Fri, 30 Mar 2012 18:30:24 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:69858</guid><dc:creator>AlKiS</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/69858.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=72&amp;PostID=69858</wfw:commentRss><description>&lt;p&gt;Thank you, this was of great help!!! :)&lt;/p&gt;</description></item><item><title>Απ: Μεταξύ δύο μεταβλητών...</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/69855.aspx</link><pubDate>Fri, 30 Mar 2012 18:04:53 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:69855</guid><dc:creator>George J. Capnias</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/69855.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=72&amp;PostID=69855</wfw:commentRss><description>&lt;BLOCKQUOTE&gt;&lt;div&gt;&lt;img src="http://www.dotnetzone.gr/cs/Themes/default/images/icon-quote.gif"&gt; &lt;strong&gt;AlKiS:&lt;/strong&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;1) το "lstSomething" στο "lstSomething.DataSource = lstSomethingSource" είναι τύπου ListBox ??&lt;/p&gt;&lt;p&gt;1.1) Αν ναι, τότε γιατί χρησιμοποιούμαι και το List (of T) και το listbox?? Κερδίζουμε κάτι?&lt;/p&gt;&lt;p&gt;2) Από τα λεγόμενά σου είναι ξεκάθαρο ότι μια String() μεταβλητή είναι πιο γρήγορη και από&amp;nbsp;listbox και από&amp;nbsp;List (of T). Όμως δεν είναι ξεκάθαρο ακόμα αν μια List (of T) είναι πιο γρήγορα από μια listbox. Είναι πιο γρήγορα?&amp;nbsp;&lt;/p&gt;&lt;p&gt;3) Στον κώδικα αυτό, μήπως στις γραμμές 5 ως και 7 εννοείς:&lt;/p&gt;&lt;p&gt;&lt;table border="0" cellSpacing="0" cellPadding="0" width="100%"&gt;&lt;tr style="line-height:normal;vertical-align:top;"&gt;&lt;td style="width:40px;text-align:right;"&gt;&lt;pre style="margin:0px;padding:2px;color:gray;font-family:courier new;font-size:11px;border-right-width:1px;border-right-style:solid;"&gt;1
2
3
 &lt;/pre&gt;&lt;/td&gt;&lt;td&gt;&lt;pre style="margin:0px;padding:2px 2px 2px 8px;"&gt;&lt;span style="color:black;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;        &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;Dim&lt;/span&gt; lstSomethingElseSource &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;As&lt;/span&gt; List(Of &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;String&lt;/span&gt;)
        lstSomethingElseSource &lt;span style="color:red;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;=&lt;/span&gt; From s &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;In&lt;/span&gt; Something&lt;font color="#ff1493"&gt;ELSE&lt;/font&gt; Where s &amp;lt;&amp;gt; &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;String&lt;/span&gt;.Empty &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;Select&lt;/span&gt; s
        lstSomething&lt;font color="#800080"&gt;ELSE&lt;/font&gt;.DataSource &lt;span style="color:red;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;=&lt;/span&gt; lstSomething&lt;font color="#ff1493"&gt;ELSE&lt;/font&gt;Source&lt;/span&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/p&gt;&lt;p&gt;?? (Ρωτάω για να σιγουρευτώ ότι κατάλαβα τι γίνεται, και να μην λέω βλακείες)&lt;/p&gt;&lt;p&gt;3.1) Αν ναι, τότε νομίζω καταλαβαίνω τι κάνει ο κώδικάς σου, και παρατηρώ το εξής: Στην γραμμή 2, δίνεις κατευθείαν όλο το array στην λίστα, ενώ στην γραμμή 6 μέσω LINQ του λες να πάρει μόνο αυτά που δεν είναι άδεια (""). Σωστά?&lt;/p&gt;&lt;p&gt;3.2) Πάλι αν ναι, τότε και στην γραμμή 2 θα πρέπει να το κάνουμε με LINQ να παίρνει μόνο τις μη-καινές τιμές με τον ίδιο ακριβώς τρόπο, σωστά?&lt;/p&gt;&lt;p&gt;4) Το Databinding που αναφέρεις είναι αυτό: "lstSomething.DataSource = lstSomethingSource". Δηλαδή όταν δίνουμε κάτι σε ένα DataSource ονομάζεται Databinding, σωστά?&lt;/p&gt;&lt;p&gt;4.1) Αφού δώσαμε σαν DataSource το lstSomethingSource, τώρα ότι αλλαγή κάνουμε στο "lstSomething" θα αλλάζει επίσης και το "lstSomethingSource"?? (με άλλα λόγια, δεν δημιουργήσαμε καινούργιο array, απλώς δώσαμε ένα reference στο "lstSomethingSource" ε?)&lt;/p&gt;&lt;p&gt;&lt;/div&gt;&lt;/BLOCKQUOTE&gt;&lt;/p&gt;&lt;p&gt;Αρχίζοντας με την πλήρη κώδικα που είχα μπροστά μου στο παράδειγμα που είχα φτιάξει προχτές - τα lstSomething και lstSomethingElse είναι listbox controls&lt;/p&gt;&lt;table border="0" cellSpacing="0" cellPadding="0" width="100%"&gt;&lt;tr style="line-height:normal;vertical-align:top;"&gt;&lt;td style="width:40px;text-align:right;"&gt;&lt;pre style="margin:0px;padding:2px;color:gray;font-family:courier new;font-size:11px;border-right-width:1px;border-right-style:solid;"&gt;1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
 &lt;/pre&gt;&lt;/td&gt;&lt;td&gt;&lt;pre style="margin:0px;padding:2px 2px 2px 8px;"&gt;&lt;span style="color:black;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;        &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;Dim&lt;/span&gt; Something &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;As&lt;/span&gt; List(Of &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;String&lt;/span&gt;)

        Something &lt;span style="color:red;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;=&lt;/span&gt; &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;New&lt;/span&gt; List(Of &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;String&lt;/span&gt;)
        Something.&lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;Add&lt;/span&gt;(&lt;span style="font-family:Courier New;font-size:11px;font-weight:normal;"&gt;"Value 1"&lt;/span&gt;)
        Something.&lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;Add&lt;/span&gt;(&lt;span style="font-family:Courier New;font-size:11px;font-weight:normal;"&gt;"Value 2"&lt;/span&gt;)
        Something.&lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;Add&lt;/span&gt;(&lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;String&lt;/span&gt;.Empty)
        Something.&lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;Add&lt;/span&gt;(&lt;span style="font-family:Courier New;font-size:11px;font-weight:normal;"&gt;"Value 3"&lt;/span&gt;)
        Something.&lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;Add&lt;/span&gt;(&lt;span style="font-family:Courier New;font-size:11px;font-weight:normal;"&gt;"Value 4"&lt;/span&gt;)
        Something.&lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;Add&lt;/span&gt;(&lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;String&lt;/span&gt;.Empty)
        Something.&lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;Add&lt;/span&gt;(&lt;span style="font-family:Courier New;font-size:11px;font-weight:normal;"&gt;"Value 5"&lt;/span&gt;)

        &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;Dim&lt;/span&gt; lstSomethingSource &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;As&lt;/span&gt; List(Of &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;String&lt;/span&gt;)
        lstSomethingSource &lt;span style="color:red;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;=&lt;/span&gt; Something
        lstSomething.DataSource &lt;span style="color:red;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;=&lt;/span&gt; lstSomethingSource

        &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;Dim&lt;/span&gt; lstSomethingElseSource &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;As&lt;/span&gt; List(Of &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;String&lt;/span&gt;)
        lstSomethingElseSource &lt;span style="color:red;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;=&lt;/span&gt; (From s &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;In&lt;/span&gt; Something Where s &amp;lt;&amp;gt; &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;String&lt;/span&gt;.Empty &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;Select&lt;/span&gt; s).ToList()
        lstSomethingElse.DataSource &lt;span style="color:red;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;=&lt;/span&gt; lstSomethingElseSource

        &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;Dim&lt;/span&gt; i &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;As&lt;/span&gt; &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;Integer&lt;/span&gt; &lt;span style="color:red;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;=&lt;/span&gt; 0
        &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;Dim&lt;/span&gt; Whatever &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;As&lt;/span&gt; &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;String&lt;/span&gt; &lt;span style="color:red;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;=&lt;/span&gt; &lt;span style="font-family:Courier New;font-size:11px;font-weight:normal;"&gt;"Value"&lt;/span&gt;
        &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;For&lt;/span&gt; &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;Each&lt;/span&gt; s &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;As&lt;/span&gt; &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;String&lt;/span&gt; &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;In&lt;/span&gt; lstSomething.Items
            &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;If&lt;/span&gt; lstSomething.Items(i).ToString &lt;span style="color:red;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;=&lt;/span&gt; Whatever &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;Then&lt;/span&gt;
                &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;Dim&lt;/span&gt; tmp &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;As&lt;/span&gt; &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;String&lt;/span&gt; &lt;span style="color:red;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;=&lt;/span&gt; lstSomething.Items(i).ToString
                &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;Dim&lt;/span&gt; tmp2 &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;As&lt;/span&gt; &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;String&lt;/span&gt; &lt;span style="color:red;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;=&lt;/span&gt; lstSomethingElse.Items(i).ToString

                lstSomething.Items(i) &lt;span style="color:red;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;=&lt;/span&gt; lstSomething.Items(i &lt;span style="color:red;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;+&lt;/span&gt; 1)
                lstSomethingElse.Items(i) &lt;span style="color:red;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;=&lt;/span&gt; lstSomethingElse.Items(i &lt;span style="color:red;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;+&lt;/span&gt; 1)

                lstSomething.Items(i) &lt;span style="color:red;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;=&lt;/span&gt; tmp
                lstSomethingElse.Items(i) &lt;span style="color:red;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;=&lt;/span&gt; tmp2

            &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;End&lt;/span&gt; &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;If&lt;/span&gt;

            i &lt;span style="color:red;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;=&lt;/span&gt; i &lt;span style="color:red;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;+&lt;/span&gt; 1
        &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;Next&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;1.1 Για να μπορέσουμε να κάνουμε το DataBinding, πρέπει να έχουμε ένα αντικείμενο που ικανοποιεί το interface IEnumerable το λιγότερο - αν δεν κάνω λάθος. Το List (Of T) είναι ο συνηθησμένος τρόπος να καλύψεις αυτή την ανάγκη μιας και μπορείς να το χρησιμοποιήσεις και με την LINQ.&lt;/p&gt;&lt;p&gt;2. Η μεταβλητή String() είναι πιο γρήγορη από το List(Of String). Αυτό έχει να κάνει με την χρήση αποκλειστικά της μεταβλητής στο πρόγραμμα. Όμως το DataBinding επιτρέπει να φορτώσεις τα δεδομένα στο control πιο γρήγορα - αρκεί η μεταβλητή που θα δώσεις ικανοποιεί αυτά που είπαμε προγουμένως - το List(Of T) μπορεί να γίνει databind, το String() όχι. Υπόψη εδώ ότι όπου υπάρχουν generics, μπαίνουν στην μέση και τα optimizations που κάνει ο compliler που εξαρτούνται από το hardware του μηχανίματος, και δεν μπορείς να έχεις σαφή εικόνα πόσο πιο αργός ή γρήγορος θα είναι ο κώδιακας τελικά...&lt;/p&gt;&lt;p&gt;3. Όχι, έχω παρει τα αρχικά δεδομένα (Something)&amp;nbsp;και σε αυτά ψάχνω τις τιμές - αν ήθελα να χρησιμοποιήσω τα δεδομένα που είχε το πρώτο listbox control, δεν θα έπαιρνα την συλλογή Items που έχει το listbox. Θα προτειμούσα το List(Of T) από το οποίο έχουν προκύψει. Κάθε αλλαγή στο .Items του listbox προκαλεί διάφορα events, όπως redraw στην φόρμα που κοστίζουν πολύ σε χρόνο.&lt;/p&gt;&lt;p&gt;3.1. Σωστά προσπαθώ να πάρω τις μη κενές τιμές.&lt;/p&gt;&lt;p&gt;4. Ναι&lt;/p&gt;&lt;p&gt;4.1. Όχι - κάθε καινούργια λίστα έχει αντίγραφα των αντικειμένων που πήρε από την λίστα από την οποία προήλθε, όχι τα ίδια.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;George J.&lt;br&gt;&lt;/p&gt;</description></item><item><title>Απ: Μεταξύ δύο μεταβλητών...</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/69847.aspx</link><pubDate>Thu, 29 Mar 2012 20:45:22 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:69847</guid><dc:creator>AlKiS</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/69847.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=72&amp;PostID=69847</wfw:commentRss><description>&lt;p&gt;Άα άρα μιλάμε για άλλη εντελώς μεταβλητή. Ωραία, good to know.&lt;/p&gt;&lt;p&gt;Ευχαριστώ φίλε μου :)&lt;/p&gt;&lt;p&gt;&lt;br&gt;&lt;/p&gt;&lt;p&gt;Btw, για όσους διαβάσουν αυτό το μήνυμα, να ξέρετε ότι υπάρχουν κι άλλες άλυτες ερωτήσεις μου πιο πάνω. Και για να μην ψάχνετε να τις βρίσκεται, τις ξαναγράφω εδώ:&lt;/p&gt;&lt;p&gt;1) το "lstSomething" στο "lstSomething.DataSource = lstSomethingSource" είναι τύπου ListBox ??&lt;br&gt;&lt;br&gt;1.1) Αν ναι, τότε γιατί χρησιμοποιούμαι και το List (of T) και το listbox?? Κερδίζουμε κάτι?&lt;br&gt;&lt;br&gt;2) Από τα λεγόμενά σου είναι ξεκάθαρο ότι μια String() μεταβλητή είναι πιο γρήγορη και από listbox και από List (of T). Όμως δεν είναι ξεκάθαρο ακόμα αν μια List (of T) είναι πιο γρήγορα από μια listbox. Είναι πιο γρήγορα? &lt;br&gt;&lt;br&gt;3) Στον κώδικα αυτό, μήπως στις γραμμές 5 ως και 7 εννοείς:&lt;br&gt;&lt;br&gt;&amp;nbsp;	       &amp;nbsp;&lt;table border="0" cellpadding="0" cellspacing="0" width="100%" style="background-color:#f2f2f2;border:solid 1px #e5e5e5;"&gt;&lt;tr style="vertical-align:top;line-height:normal;"&gt;&lt;td style="width:40px;text-align:right;"&gt;&lt;pre style="font-family:courier new;font-size:11px;color:gray;margin:0px;padding:2px;border-right:solid 1px #e7e7e7;"&gt;1
2
3
 &lt;/pre&gt;&lt;/td&gt;&lt;td&gt;&lt;pre style="margin:0px;padding:2px;padding-left:8px;"&gt;&lt;span style="color:Black;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;Dim&lt;/span&gt; lstSomethingElseSource &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;As&lt;/span&gt; List(Of &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;String&lt;/span&gt;)
lstSomethingElseSource &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; From s &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;In&lt;/span&gt; SomethingELSE Where s &amp;lt;&amp;gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;String&lt;/span&gt;.Empty &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;Select&lt;/span&gt; s
lstSomethingELSE.DataSource &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; lstSomethingELSESource&lt;/span&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br&gt;?? (Ρωτάω για να σιγουρευτώ ότι κατάλαβα τι γίνεται, και να μην λέω βλακείες)&lt;br&gt;&lt;br&gt;3.1) Αν ναι, τότε νομίζω καταλαβαίνω τι κάνει ο κώδικάς σου, και παρατηρώ το εξής: Στην γραμμή 2, δίνεις κατευθείαν όλο το array στην λίστα, ενώ στην γραμμή 6 μέσω LINQ του λες να πάρει μόνο αυτά που δεν είναι άδεια (""). Σωστά?&lt;br&gt;&lt;br&gt;3.2) Πάλι αν ναι, τότε και στην γραμμή 2 θα πρέπει να το κάνουμε με LINQ να παίρνει μόνο τις μη-καινές τιμές με τον ίδιο ακριβώς τρόπο, σωστά?&lt;br&gt;&lt;br&gt;4) Το Databinding που αναφέρεις είναι αυτό: "lstSomething.DataSource = lstSomethingSource". Δηλαδή όταν δίνουμε κάτι σε ένα DataSource ονομάζεται Databinding, σωστά?&lt;br&gt;&lt;br&gt;4.1) Αφού δώσαμε σαν DataSource το lstSomethingSource, τώρα ότι αλλαγή κάνουμε στο "lstSomething" θα αλλάζει επίσης και το "lstSomethingSource"?? (με άλλα λόγια, δεν δημιουργήσαμε καινούργιο array, απλώς δώσαμε ένα reference στο "lstSomethingSource" ε?)&lt;/p&gt;</description></item><item><title>Απ: Μεταξύ δύο μεταβλητών...</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/69846.aspx</link><pubDate>Thu, 29 Mar 2012 20:35:21 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:69846</guid><dc:creator>nikos123</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/69846.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=72&amp;PostID=69846</wfw:commentRss><description>Με LINQ δεν έχω&amp;nbsp;ασχοληθεί, οπότε μπορεί να τα πω λάθος.&lt;div&gt;&lt;br&gt;&lt;div&gt;Όσο&amp;nbsp;για τα notifications,&amp;nbsp;υποστηρίζει&amp;nbsp;το BindingList&amp;lt;T&amp;gt; .&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;pre&gt;&lt;span style="color:Black;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;            BindingList&amp;lt;&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;string&lt;/span&gt;&amp;gt; list &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;new&lt;/span&gt;  BindingList&amp;lt;&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;string&lt;/span&gt;&amp;gt;();
            list.Add(&lt;span style="color:#666666;background-color:#e4e4e4;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;"1"&lt;/span&gt;);
            list.Add(&lt;span style="color:#666666;background-color:#e4e4e4;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;"2"&lt;/span&gt;);
            listBox1.DataSource &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; list;
            list.Add(&lt;span style="color:#666666;background-color:#e4e4e4;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;"3"&lt;/span&gt;);
            list.Add(&lt;span style="color:#666666;background-color:#e4e4e4;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;"4"&lt;/span&gt;);&lt;/span&gt;&lt;/pre&gt;Στο listBox1 θα εμφανιστούν και τα 3, 4 που προστέθηκαν μετά το Binding.&lt;/div&gt;&lt;/div&gt;&lt;div&gt;Αν&amp;nbsp;είχες&amp;nbsp;List θα εμφάνιζε μόνο τα 1, 2.&lt;/div&gt;</description></item><item><title>Απ: Μεταξύ δύο μεταβλητών...</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/69845.aspx</link><pubDate>Thu, 29 Mar 2012 19:27:26 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:69845</guid><dc:creator>AlKiS</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/69845.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=72&amp;PostID=69845</wfw:commentRss><description>&lt;p&gt;Αχά, άρα με λίγα δεν είναι αλληλένδετα εκτός κιαν ορίσεις "notification".&lt;/p&gt;&lt;p&gt;Αν έχεις χρόνο απάντησε και σε μερικές ακόμα απο ερωτήσεις μου (προηγούμενο ποστ) :)&lt;/p&gt;</description></item><item><title>Απ: Μεταξύ δύο μεταβλητών...</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/69844.aspx</link><pubDate>Thu, 29 Mar 2012 18:14:25 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:69844</guid><dc:creator>nikos123</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/69844.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=72&amp;PostID=69844</wfw:commentRss><description>&lt;div&gt;Δεν&amp;nbsp;μπορείς&amp;nbsp;να&amp;nbsp;συγκρίσεις&amp;nbsp;το List&amp;lt;T&amp;gt; με το ListBox.&lt;/div&gt;&lt;div&gt;To List&amp;lt;Τ&amp;gt; είναι μια δομή θέσεων στη μνήμη για αποθήκευση δεδομένων (συνήθως ίδιου τύπου).&lt;/div&gt;Το Listbox είναι Control και εκτός από τα δεδομένα του (Items) έχει και visual εμφάνιση (painting, fonts...),&amp;nbsp;δίνει&amp;nbsp;τη&amp;nbsp;δυνατότητα&amp;nbsp;στο χρήστη να κάνει&amp;nbsp;κλικ&amp;nbsp;, να επιλέξει Item. Όλα αυτά έχουν κάποιο κόστος σε μνήμη , resources και χρόνο.&lt;div&gt;&lt;div&gt;Για τα δεδομένα του το ListBox μπορεί να χρησιμοποιήσει&amp;nbsp;οποιαδήποτε&amp;nbsp;δομή που κάνει implement το IList.&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Αν ορίσεις DataSource το lstSomethingSource και μετά&amp;nbsp;προσθέσεις κάτι στο&amp;nbsp;lstSomethingSource&amp;nbsp;θα δεις αλλαγή στο ListBox μόνο αν το&amp;nbsp;lstSomethingSource&amp;nbsp;υποστηρίζει&amp;nbsp;notifications. Διαφορετικά θα πρέπει να ανανεώσεις το binding.&lt;/div&gt;</description></item><item><title>Απ: Μεταξύ δύο μεταβλητών...</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/69837.aspx</link><pubDate>Thu, 29 Mar 2012 01:24:28 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:69837</guid><dc:creator>AlKiS</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/69837.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=72&amp;PostID=69837</wfw:commentRss><description>&lt;p&gt;Αχά, ωραία :)&lt;/p&gt;&lt;p&gt;Μου γεννήθηκαν όμως μερικές ακόμα ερωτήσεις.... :Ρ&lt;/p&gt;&lt;p&gt;&lt;br&gt;&lt;/p&gt;&lt;p&gt;1) το "lstSomething" στο "lstSomething.DataSource = lstSomethingSource" είναι τύπου ListBox ??&lt;/p&gt;&lt;p&gt;1.1) Αν ναι, τότε γιατί χρησιμοποιούμαι και το List (of T) και το listbox?? Κερδίζουμε κάτι?&lt;/p&gt;&lt;p&gt;2) Από τα λεγόμενά σου είναι ξεκάθαρο ότι μια String() μεταβλητή είναι πιο γρήγορη και από&amp;nbsp;listbox και από&amp;nbsp;List (of T). Όμως δεν είναι ξεκάθαρο ακόμα αν μια List (of T) είναι πιο γρήγορα από μια listbox. Είναι πιο γρήγορα?&amp;nbsp;&lt;/p&gt;&lt;p&gt;3) Στον κώδικα αυτό, μήπως στις γραμμές 5 ως και 7 εννοείς:&lt;/p&gt;&lt;p&gt;&lt;table border="0" cellpadding="0" cellspacing="0" width="100%" style="background-color:#f2f2f2;border:solid 1px #e5e5e5;"&gt;&lt;tr style="vertical-align:top;line-height:normal;"&gt;&lt;td style="width:40px;text-align:right;"&gt;&lt;pre style="font-family:courier new;font-size:11px;color:gray;margin:0px;padding:2px;border-right:solid 1px #e7e7e7;"&gt;1
2
3
 &lt;/pre&gt;&lt;/td&gt;&lt;td&gt;&lt;pre style="margin:0px;padding:2px;padding-left:8px;"&gt;&lt;span style="color:Black;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;        &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;Dim&lt;/span&gt; lstSomethingElseSource &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;As&lt;/span&gt; List(Of &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;String&lt;/span&gt;)
        lstSomethingElseSource &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; From s &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;In&lt;/span&gt; Something&lt;font color="#ff1493"&gt;ELSE&lt;/font&gt; Where s &amp;lt;&amp;gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;String&lt;/span&gt;.Empty &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;Select&lt;/span&gt; s
        lstSomething&lt;font color="#800080"&gt;ELSE&lt;/font&gt;.DataSource &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; lstSomething&lt;font color="#ff1493"&gt;ELSE&lt;/font&gt;Source&lt;/span&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/p&gt;&lt;p&gt;?? (Ρωτάω για να σιγουρευτώ ότι κατάλαβα τι γίνεται, και να μην λέω βλακείες)&lt;/p&gt;&lt;p&gt;3.1) Αν ναι, τότε νομίζω καταλαβαίνω τι κάνει ο κώδικάς σου, και παρατηρώ το εξής: Στην γραμμή 2, δίνεις κατευθείαν όλο το array στην λίστα, ενώ στην γραμμή 6 μέσω LINQ του λες να πάρει μόνο αυτά που δεν είναι άδεια (""). Σωστά?&lt;/p&gt;&lt;p&gt;3.2) Πάλι αν ναι, τότε και στην γραμμή 2 θα πρέπει να το κάνουμε με LINQ να παίρνει μόνο τις μη-καινές τιμές με τον ίδιο ακριβώς τρόπο, σωστά?&lt;/p&gt;&lt;p&gt;4) Το Databinding που αναφέρεις είναι αυτό: "lstSomething.DataSource = lstSomethingSource". Δηλαδή όταν δίνουμε κάτι σε ένα DataSource ονομάζεται Databinding, σωστά?&lt;/p&gt;&lt;p&gt;4.1) Αφού δώσαμε σαν DataSource το lstSomethingSource, τώρα ότι αλλαγή κάνουμε στο "lstSomething" θα αλλάζει επίσης και το "lstSomethingSource"?? (με άλλα λόγια, δεν δημιουργήσαμε καινούργιο array, απλώς δώσαμε ένα reference στο "lstSomethingSource" ε?)&lt;/p&gt;&lt;p&gt;&lt;br&gt;&lt;/p&gt;&lt;p&gt;btw, Τα νούμερα στις ερωτήσεις τα βάζω για να ξεχωρίζουν και να φαίνονται πιο καλά, αλλά αν σας την σπάει, μπορώ να το σταματήσω.&lt;/p&gt;</description></item><item><title>Απ: Μεταξύ δύο μεταβλητών...</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/69826.aspx</link><pubDate>Wed, 28 Mar 2012 07:52:30 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:69826</guid><dc:creator>George J. Capnias</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/69826.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=72&amp;PostID=69826</wfw:commentRss><description>&lt;p&gt;Θεωριτικά η λίστα είναι ένα πλούσιο αντικείμενο, άρα και πιο αργό, αλλά πρακτικά μπορεί να λύσει περισσότερα προβλήματα πιο γρήγορα, πχ:&lt;/p&gt;&lt;p&gt;Ο αντίστοιχος κώδικας σε Linq θα ήταν κάπως έτσι:&lt;/p&gt;&lt;table border="0" cellSpacing="0" cellPadding="0" width="100%"&gt;&lt;tr style="line-height:normal;vertical-align:top;"&gt;&lt;td style="width:40px;text-align:right;"&gt;&lt;pre style="margin:0px;padding:2px;color:gray;font-family:courier new;font-size:11px;border-right-width:1px;border-right-style:solid;"&gt;1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
 &lt;/pre&gt;&lt;/td&gt;&lt;td&gt;&lt;pre style="margin:0px;padding:2px 2px 2px 8px;"&gt;&lt;span style="color:black;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;        &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;Dim&lt;/span&gt; lstSomethingSource &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;As&lt;/span&gt; List(Of &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;String&lt;/span&gt;)
        lstSomethingSource &lt;span style="color:red;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;=&lt;/span&gt; Something
        lstSomething.DataSource &lt;span style="color:red;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;=&lt;/span&gt; lstSomethingSource

        &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;Dim&lt;/span&gt; lstSomethingElseSource &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;As&lt;/span&gt; List(Of &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;String&lt;/span&gt;)
        lstSomethingElseSource &lt;span style="color:red;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;=&lt;/span&gt; From s &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;In&lt;/span&gt; Something Where s &amp;lt;&amp;gt; &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;String&lt;/span&gt;.Empty &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;Select&lt;/span&gt; s
        lstSomething.DataSource &lt;span style="color:red;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;=&lt;/span&gt; lstSomethingSource

        &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;Dim&lt;/span&gt; i &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;As&lt;/span&gt; &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;Integer&lt;/span&gt; &lt;span style="color:red;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;=&lt;/span&gt; 0
        &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;Dim&lt;/span&gt; Whatever &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;As&lt;/span&gt; &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;String&lt;/span&gt; &lt;span style="color:red;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;=&lt;/span&gt; &lt;span style="font-family:Courier New;font-size:11px;font-weight:normal;"&gt;"Value"&lt;/span&gt;
        &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;For&lt;/span&gt; &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;Each&lt;/span&gt; s &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;As&lt;/span&gt; &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;String&lt;/span&gt; &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;In&lt;/span&gt; lstSomething.Items
            &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;If&lt;/span&gt; lstSomething.Items(i).ToString &lt;span style="color:red;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;=&lt;/span&gt; Whatever &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;Then&lt;/span&gt;
                &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;Dim&lt;/span&gt; tmp &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;As&lt;/span&gt; &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;String&lt;/span&gt; &lt;span style="color:red;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;=&lt;/span&gt; lstSomething.Items(i).ToString
                &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;Dim&lt;/span&gt; tmp2 &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;As&lt;/span&gt; &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;String&lt;/span&gt; &lt;span style="color:red;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;=&lt;/span&gt; lstSomethingElse.Items(i).ToString

                lstSomething.Items(i) &lt;span style="color:red;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;=&lt;/span&gt; lstSomething.Items(i &lt;span style="color:red;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;+&lt;/span&gt; 1)
                lstSomethingElse.Items(i) &lt;span style="color:red;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;=&lt;/span&gt; lstSomethingElse.Items(i &lt;span style="color:red;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;+&lt;/span&gt; 1)

                lstSomething.Items(i) &lt;span style="color:red;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;=&lt;/span&gt; tmp
                lstSomethingElse.Items(i) &lt;span style="color:red;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;=&lt;/span&gt; tmp2

            &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;End&lt;/span&gt; &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;If&lt;/span&gt;

            i &lt;span style="color:red;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;=&lt;/span&gt; i &lt;span style="color:red;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;+&lt;/span&gt; 1
        &lt;span style="color:blue;font-family:Courier New;font-size:11px;font-weight:normal;background-color:transparent;"&gt;Next&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;Επειδή έχουμε Databinding επάνω στο control, σίγουρα θα γεμίσει πιο γρήγορα το control, από τον δικό σου τρόπο - αυτό δεν οφείλεται στη λίστα, αλλά στο τρόπο που γεμίζει.&lt;/p&gt;&lt;p&gt;Η λίστα για το δεύτερο listbox φιλτράρει με LINQ - κώδικας είναι πολύ πιο καθαρός και εύκολος στην κατανόηση.&lt;/p&gt;&lt;p&gt;Ωστόσο στην περίπτωση που αλλάζεις τιμές σε ορισμένα items, δεν υπάρχει κάτι καλύτερο να κάνεις - αν όμως υπήρχει τρόπος που με φιλτράρισμα και μεταμόρφωση (trasform) μπορούσε να επιτευχθεί, θα μπορούσε να εκφραστεί σε Linq, άρα θα είχες και την λίστα σου πιο εύκολα, η λίστα με DataBinding θα σου έδεινε και την ταχύτητα θέλεις, κοκ...&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;George J.&lt;br&gt;&lt;/p&gt;</description></item><item><title>Απ: Μεταξύ δύο μεταβλητών...</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/69823.aspx</link><pubDate>Wed, 28 Mar 2012 06:18:57 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:69823</guid><dc:creator>AlKiS</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/69823.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=72&amp;PostID=69823</wfw:commentRss><description>&lt;p&gt;Ωραία :) Ευχαριστώ πολύ!&lt;/p&gt;&lt;p&gt;&lt;br&gt;&lt;/p&gt;&lt;p&gt;Φοβόμουν μήπως Η "μεταβλητή List(Of T)" είναι πολύ αργή και δεν αξίζει άμα είναι να την καλώ συχνά...&lt;/p&gt;&lt;p&gt;Αυτό το LINQ το βρίσκω παντού μπροστά μου... πρέπει κάποια στιγμή να βρω χρόνο να το μάθω!&lt;/p&gt;&lt;p&gt;&lt;br&gt;&lt;/p&gt;&lt;p&gt;Ο παρακάτω κώδικας δεν κάνει κάτι, απλώς για να καταλάβετε την ερώτηση που θα ακολουθήσει ρίξτε μια ματιά:&lt;/p&gt;&lt;p&gt;&lt;table border="0" cellpadding="0" cellspacing="0" width="100%" style="background-color:#f2f2f2;border:solid 1px #e5e5e5;"&gt;&lt;tr style="vertical-align:top;line-height:normal;"&gt;&lt;td style="width:40px;text-align:right;"&gt;&lt;pre style="font-family:courier new;font-size:11px;color:gray;margin:0px;padding:2px;border-right:solid 1px #e7e7e7;"&gt;1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
 &lt;/pre&gt;&lt;/td&gt;&lt;td&gt;&lt;pre style="margin:0px;padding:2px;padding-left:8px;"&gt;&lt;span style="color:Black;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;            &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;Dim&lt;/span&gt; lstSomething &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;As&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;New&lt;/span&gt; ListBox
            &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;For&lt;/span&gt; i &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; 0 &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;To&lt;/span&gt; Something.Length
                &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;If&lt;/span&gt; Something(i) &amp;lt;&amp;gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;String&lt;/span&gt;.Empty &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;Then&lt;/span&gt;
                    lstSomething.Items.&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;Add&lt;/span&gt;(Something)
                &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;End&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;If&lt;/span&gt;
            &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;Next&lt;/span&gt;

            &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;Dim&lt;/span&gt; lstSomethingElse &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;As&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;New&lt;/span&gt; ListBox
            &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;For&lt;/span&gt; i &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; 0 &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;To&lt;/span&gt; SomethingElse.Length
                &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;If&lt;/span&gt; SomethingElse(i) &amp;lt;&amp;gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;String&lt;/span&gt;.Empty &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;Then&lt;/span&gt;
                    lstSomethingElse.Items.&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;Add&lt;/span&gt;(SomethingElse)
                &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;End&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;If&lt;/span&gt;
            &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;Next&lt;/span&gt;

            &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;For&lt;/span&gt; i &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; 0 &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;To&lt;/span&gt; lstSomething.Items.&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;Count&lt;/span&gt; &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;-&lt;/span&gt; 2
                &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;If&lt;/span&gt; lstSomething.Items(i).ToString &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; Whatever &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;Then&lt;/span&gt;
                    &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;Dim&lt;/span&gt; tmp &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;As&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;String&lt;/span&gt; &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; lstSomething.Items(i).ToString
                    &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;Dim&lt;/span&gt; tmp2 &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;As&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;String&lt;/span&gt; &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; lstSomethingElse.Items(i).ToString

                    lstSomething.Items(i) &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; lstSomething.Items(i &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;+&lt;/span&gt; 1)
                    lstSomethingElse.Items(i) &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; lstSomethingElse.Items(i &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;+&lt;/span&gt; 1)

                    lstSomething.Items(i) &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; tmp
                    lstSomethingElse.Items(i) &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; tmp2
                &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;End&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;If&lt;/span&gt;
            &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;Next&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/p&gt;&lt;p&gt;Έχουμε λοιπόν ένα κώδικα ο οποίος βάζει κάτι μέσα σε 2 μεταβλητές Listbox, μετά ψάχνει να βρει κάτι άλλο.. και αν το βρει αλλάζει τα δεδομένα και στα 2 listboxes (θεωρούμε ότι συνδέονται άμεσα τα 2 listboxes και έχουν τον ίδιο αριθμό αντικειμένων)&lt;/p&gt;&lt;p&gt;Τα listbox είναι (απόσο ξέρω τουλάχιστον) αργές μεταβλητές.. και όταν έχουμε να κάνουμε με χιλιάδες σειρές.. παίρνει κάποια ώρα.&lt;/p&gt;&lt;p&gt;Αν το ίδιο πράγμα το είχα κάνει με "Μεταβλητή (List of String)" αντί για listbox, θα έβλεπα βελτίωση στην απαιτούμενη ώρα?&lt;/p&gt;&lt;p&gt;(Η ερώτησή μου έχει άμεση σχέση με το πρώτο ποστ που έκανα - γιατί όταν είπα ότι θα κάνω πράξεις με αυτά, δεν εννοούσα τόσο πραγματικά πράξεις, όσο αυτό το πράγμα.. δηλαδή να διαβάζω τι έχει μέσα σε συγκεκριμένα indexes, και να αλλάζω τις τιμές στα ίδια indexes σε 2 ή περισσότερες μεταβλητές ταυτόχρονα)&lt;/p&gt;&lt;p&gt;Τώρα πιθανόν να το χρειαστώ και για πράξεις πράξεις, άρα το LINQ σίγουρα θα μου χρησιμεύσει.&lt;/p&gt;&lt;p&gt;Αυτό που αναρωτιέμαι είναι αν τα έχω σωστά στο μυαλό μου [ listbox &amp;lt; list (of T) &amp;lt; Variable()
], δηλαδή ότι σε θέμα ταχύτητας το listbox είναι αργό, το List (of T) έχει διαφορά, και το variable() είναι πιο γρήγορο αλλά όχι με τεράστια διαφορά απο το list (of T)&lt;/p&gt;</description></item><item><title>Απ: Μεταξύ δύο μεταβλητών...</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/69820.aspx</link><pubDate>Wed, 28 Mar 2012 05:19:48 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:69820</guid><dc:creator>George J. Capnias</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/69820.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=72&amp;PostID=69820</wfw:commentRss><description>&lt;p&gt;Καλησπέρα,&lt;/p&gt;&lt;p&gt;Η αλήθεια είναι πως θέλεις να λύσεις το πρόβλημά σου θα σου υποδείξει τον τρόπο &lt;/p&gt;&lt;ul&gt;&lt;li&gt;αν θες να το λύσεις "σαν μαθηματικός" θα πας με τον πίνακα, και αν θες να αποφύγεις το σκόπελο του "κάνε μια μεταβλητή(99999)" με ένα έξυπνο τρόπο, για να μην κάνεις ReDim στην προσθήκη κάθε "γραμμής", θα μπορείς να κάνεις μια αρχική τιμή πχ 64, και όταν το γεμίσεις το ReDim που θα ακολουθήσει θα πρέπει να είναι στο 128 (+64)...&lt;/li&gt;&lt;li&gt;αν θες να το λύσεις σαν προγραμματιστής θα χρεισιμοποιήσεις την "μεταβλητή List(Of T)" - μπορείς να χρησιμοποιήσεις την LINQ και να βγάλεις πολύ εύκολα αθροίσματα, μέσους όρους, ελάχιστα, μέγιστα με μια γραμμή.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Το dictionary δεν είναι παρά μια εξέλιξη του hash table, μόνο που είναι strong typed.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;George J.&lt;br&gt;&lt;/p&gt;</description></item><item><title>Μεταξύ δύο μεταβλητών...</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/69817.aspx</link><pubDate>Wed, 28 Mar 2012 02:16:25 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:69817</guid><dc:creator>AlKiS</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/69817.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=72&amp;PostID=69817</wfw:commentRss><description>&lt;p&gt;Καλησπέρα για ακόμα μια φορά φόρουμ! έχω μια απορία...&lt;/p&gt;&lt;p&gt;Θέλουμε
να βάλουμε άγνωστο πλήθος τιμών μέσα σε μια μεταβλητή.&lt;/p&gt;&lt;p&gt;-Είναι γνωστό ότι αυτή η
μεταβλητή θα χρησιμοποιηθεί για πράξεις αργότερα-&lt;/p&gt;&lt;p&gt;

&lt;p class="MsoNoSpacing"&gt;Είναι καλύτερα να κάνουμε μια «μεταβλητή()» και να την
κάνουμε &lt;span style="mso-ansi-language:EN-US;"&gt;redim&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;preserve&lt;/span&gt;,
ή να κάνουμε μια «μεταβλητή List(Of&amp;nbsp;Τ)»?&lt;/p&gt;

&lt;p class="MsoNoSpacing"&gt;(Με εξαίρεση το «κάνε μια μεταβλητή(99999) [με μεγάλο
αριθμό], αν υπάρχουν κι άλλοι τρόποι να το κάνω που θα είναι πιο γρήγοροι,
πείτε μου)&lt;/p&gt;

&lt;p class="MsoNoSpacing"&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;btw&lt;/span&gt;,
κάπου είχα δει και μια μεταβλητή &lt;span style="mso-ansi-language:EN-US;"&gt;dictionary&lt;/span&gt;&lt;span&gt; &lt;/span&gt;– ακόμα δεν κατάλαβα τι κάνει,
αλλά την αναφέρω σε περίπτωση που μπορεί να έχει &lt;span style="mso-ansi-language:EN-US;"&gt;application&lt;/span&gt;&lt;span&gt; &lt;/span&gt;εδώ.&lt;/p&gt;&lt;/p&gt;</description></item></channel></rss>