<?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>.NET Framework</title><link>https://www.dotnetzone.gr:443/cs/forums/14/ShowForum.aspx</link><description>Θέματα για threading, remoting, reflection, exception handling, security, regex κλπ.</description><dc:language>el</dc:language><generator>CommunityServer 2.1 SP3 (Build: 20423.1)</generator><item><title>Απ: Listbox.SelectedItems to List</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/63687.aspx</link><pubDate>Fri, 25 Feb 2011 03:21:08 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:63687</guid><dc:creator>dimos.homatas</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/63687.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=14&amp;PostID=63687</wfw:commentRss><description>Μάρκο είναι του ίδιου τύπου (στην δική μου περίπτωση), απλά το παράδειγμα του Παναγιώτη καλύπτει και την περίπτωση των διαφορετικών αντικειμένων.&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Το παράδειγμα ήταν σαφέστατο. Και το έχω κάνει και παλιότερα σε Controls collection (φέρε τα controls τύπου τάδε από το δείνα container) , τελικά είναι το ίδιο πράγμα! Δεν πήγε καν το μυαλό μου...&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Ευχαριστώ για τον χρόνο&lt;/div&gt;</description></item><item><title>Απ: Listbox.SelectedItems to List</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/63682.aspx</link><pubDate>Fri, 25 Feb 2011 01:15:44 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:63682</guid><dc:creator>Markos</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/63682.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=14&amp;PostID=63682</wfw:commentRss><description>Έπρεπε να κάνει κι άλλο post ο Παναγιώτης για να μπω στο νόημα!! Έχεις listbox με items που ανήκουν σε διαφορετικό type!! Οπότε πρέπει να χρησιμοποιήσεις την άλλη μέθοδο (OfType) που κάνει filtering.&lt;br&gt;</description></item><item><title>Απ: Listbox.SelectedItems to List</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/63680.aspx</link><pubDate>Fri, 25 Feb 2011 00:58:53 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:63680</guid><dc:creator>Παναγιώτης Καναβός</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/63680.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=14&amp;PostID=63680</wfw:commentRss><description>&lt;P&gt;Βρήκα χρόνο να γράψω και τον κώδικα, και είδα ότι δεν χρειάζεται κανένα AsXXX&lt;/P&gt;&lt;PRE&gt;&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:black;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt; &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;private&lt;/SPAN&gt; &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;void&lt;/SPAN&gt; button1_Click(&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;object&lt;/SPAN&gt; sender, EventArgs e)
        {
            var customers=listBox1.SelectedItems.OfType&amp;lt;Customer&amp;gt;().ToList();
            var persons= listBox1.SelectedItems.OfType&amp;lt;Person&amp;gt;().ToList();
            Debug.Assert(customers.Count == 5);
            Debug.Assert(persons.Count == 10);

        }

        &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;private&lt;/SPAN&gt; &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;void&lt;/SPAN&gt; Form1_Load(&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;object&lt;/SPAN&gt; sender, EventArgs e)
        {            
            &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;for&lt;/SPAN&gt;(&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;int&lt;/SPAN&gt; i=0;i&amp;lt;5;i++)
                persons.Add(&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;new&lt;/SPAN&gt; Person{Name=i.ToString()});
            &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;for&lt;/SPAN&gt;(&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;int&lt;/SPAN&gt; j=0;j&amp;lt;5;j++)
                persons.Add(&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;new&lt;/SPAN&gt; Customer{Name=j.ToString(),VAT=j.ToString()});

            listBox1.DataSource=persons;
            
        }&lt;/SPAN&gt;&lt;/PRE&gt;</description></item><item><title>Απ: Listbox.SelectedItems to List</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/63678.aspx</link><pubDate>Fri, 25 Feb 2011 00:29:12 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:63678</guid><dc:creator>Markos</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/63678.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=14&amp;PostID=63678</wfw:commentRss><description>Από το SelectedObjectCollection με χρήση της &lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.forms.listbox.selectedobjectcollection_methods%28v=VS.90%29.aspx"&gt;Cast &lt;/a&gt;extension method.&lt;br&gt;&lt;br&gt;[ΠΡΟΣΘΗΚΗ] Σου έχει απαντήσει και ο Παναγιώτης. Εγώ αρχικά νόμιζα ότι έκανες loop σε όλα τα objects της λίστας για να δεις ποια είναι επιλεγμένα.&lt;br&gt;</description></item><item><title>Απ: Listbox.SelectedItems to List</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/63674.aspx</link><pubDate>Thu, 24 Feb 2011 23:19:06 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:63674</guid><dc:creator>dimos.homatas</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/63674.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=14&amp;PostID=63674</wfw:commentRss><description>Μάρκο το ερώτημα είναι πως μπορώ να πάρω &lt;u&gt;χωρίς επανάληψη&lt;/u&gt; τα επιλεγμένα αντικείμενα από ένα listbox. Πχ τα αντικείμενα είναι πελάτες, και θέλω πίσω μία λίστα με τους επιλεγμένους πελάτες.</description></item><item><title>Απ: Listbox.SelectedItems to List</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/63673.aspx</link><pubDate>Thu, 24 Feb 2011 23:05:12 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:63673</guid><dc:creator>dimos.homatas</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/63673.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=14&amp;PostID=63673</wfw:commentRss><description>Θα το έκανες με for each Παναγιώτη αν κατάλαβα καλά;</description></item><item><title>Απ: Listbox.SelectedItems to List</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/63672.aspx</link><pubDate>Thu, 24 Feb 2011 23:04:55 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:63672</guid><dc:creator>Markos</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/63672.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=14&amp;PostID=63672</wfw:commentRss><description>Πιθανόν να μην έχω καταλάβει κάτι στην ερώτηση, αλλά το ListBox έχει &lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.forms.listbox.selecteditems%28v=VS.90%29.aspx"&gt;SelectedItems &lt;/a&gt;property, η οποία επιστρέφει ένα collection, το &lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.forms.listbox.selectedobjectcollection%28v=VS.90%29.aspx"&gt;SelectedObjectCollection&lt;/a&gt;.&lt;br&gt;</description></item><item><title>Απ: Listbox.SelectedItems to List</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/63671.aspx</link><pubDate>Thu, 24 Feb 2011 22:55:44 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:63671</guid><dc:creator>Παναγιώτης Καναβός</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/63671.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=14&amp;PostID=63671</wfw:commentRss><description>&lt;P&gt;Ίσως πρέπει να δεις τί κάνει η ToList για να πάψεις να ψάχνεις τρόπους χωρίς iteration. Όσο για το ToList, εκτός και αν θέλεις να έχεις μία λίστα με Objects, θα πρέπει να ορίσεις εσύ ο ίδιος τί τύπου περιμένεις να είναι. &lt;/P&gt;
&lt;P&gt;Μπορείς μέσω LINQ να πάρεις τα αντικείμενα στην SelectedItems και να μετατρέψεις όσα γίνεται στον τύπο που θέλεις με κάτι σαν myListBox.SelectedItems.AsEnumerable().OfType&amp;lt;MyType&amp;gt;().ToList(); Το αποτέλεσμα θα περιέχει μόνο όσα items είναι του τύπου MyType. Από πίσω φυσικά παίζουν For Each, και type checks.&lt;/P&gt;</description></item><item><title>Απ: Listbox.SelectedItems to List</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/63667.aspx</link><pubDate>Thu, 24 Feb 2011 22:15:02 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:63667</guid><dc:creator>dimos.homatas</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/63667.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=14&amp;PostID=63667</wfw:commentRss><description>Δεν είσαι καθόλου offtopic! Μη σου πω ότι είσαι και ακριβώς μέσα...&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Και εξηγώ:&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Λαμβάνοντας υπ'όψιν τη ευρύτερη νοοτροπία του frameword (όσο την έχω καταλάβει δηλαδή...)&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;και βλέποντας ότι μιλάμε απλά για δύο collections&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;και βλέποντας ότι το framework είναι γεμάτο από ToList, ToArray και συναφείς λειτουργικότητες&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;και λαμβάνοντας επίσης υπ'όψιν το θέμα της εμφάνισης του κώδικα δεν μου κάθεται καλά το θέμα του iteration σε κάτι τέτοιο (καλόμαθα με το ToList()!!!!)&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;για αυτό κάνω και την ερώτηση.&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Αν και σκέφτομαι ότι από πλευράς ταχύτητας η for each μάλλον είναι η πιο γρήγορη από όλες αυτές τις καταστάσεις. Στο κάτω κάτω, όλες οι προαναφερθείσες μέθοδοι, μαζί και με την LINQ, μάλλον iteration κάνουν. Αλλά δεν έχω και επίγνωση του τι γίνεται μέσα στα σώψυχα του framework!&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Να σημειώσω ότι χρησιμοποιώ .ΝΕΤ 3.5. Δεν ξέρω αν έχουν τροποποιηθεί κάποια πράγματα στο 4.&lt;/div&gt;</description></item><item><title>Απ: Listbox.SelectedItems to List</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/63666.aspx</link><pubDate>Thu, 24 Feb 2011 22:04:23 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:63666</guid><dc:creator>cap</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/63666.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=14&amp;PostID=63666</wfw:commentRss><description>Εεε, αν και πιθανότατα να δηλώσω άσχετος ΚΑΙ να μην απαντάω στο ερώτημα ΚΑΙ να είμαι offtopic, γιατί δεν θέλεις τη for each;&amp;nbsp;&lt;div&gt;&lt;br&gt;&lt;/div&gt;</description></item><item><title>Listbox.SelectedItems to List</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/63665.aspx</link><pubDate>Thu, 24 Feb 2011 21:58:11 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:63665</guid><dc:creator>dimos.homatas</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/63665.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=14&amp;PostID=63665</wfw:commentRss><description>Καλησπέρα,&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;ένα θέμα που αντιμετωπίζω κατά καιρούς είναι το πως παίρνω το SelectedItems collection ενός listbox (ή και από άλλα controls) σε μία List.&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Μιλάμε για custom αντικείμενα και όχι strings. Πληροφοριακά, όταν κάνουμε προσθήκη ενός αντικειμένου σε ένα listbox, το οπτικό αποτέλεσμα είναι η ToString(), οπότε με ένα override έχουμε μία χρήσιμη λειτουργικότητα.&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Αποφάσισα να το ψάξω &lt;b&gt;χωρίς να έχω for each -&amp;gt; list.add(selecteditem)&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Μετά από ημίωρο ψάξιμο κατέληξα σε αυτό:&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;myObectList &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; ((myObjectType[])(&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;new&lt;/span&gt; ArrayList(myListBox.SelectedItems).ToArray())).ToList();&lt;/span&gt;&lt;/pre&gt;Για να πω την αλήθεια μου φαίνεται πιο μπελαλίδικο, και ίσως πιο αργό από ένα for each...&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Τι λέτε; Τι προτείνετε;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;</description></item></channel></rss>