<?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>WinForms</title><link>https://www.dotnetzone.gr:443/cs/forums/12/ShowForum.aspx</link><description>Θέματα για rich client / windows εφαρμογές, σε οποιαδήποτε γλώσσα (VB.NET, C#, managed C++, κ.α.)</description><dc:language>el</dc:language><generator>CommunityServer 2.1 SP3 (Build: 20423.1)</generator><item><title>Απ: Tree node check</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/5677.aspx</link><pubDate>Fri, 23 Sep 2005 21:17:00 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:5677</guid><dc:creator>axaros</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/5677.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=12&amp;PostID=5677</wfw:commentRss><description>&lt;P&gt;Άγγελε ευχαριστώ!!&lt;BR&gt;Remove και ξανά Add στο τέλος ; &lt;BR&gt;Έχεις έστω σε C# κάτι ;&lt;/P&gt;</description></item><item><title>Απ: Tree node check</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/5676.aspx</link><pubDate>Fri, 23 Sep 2005 20:52:43 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:5676</guid><dc:creator>anjelinio</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/5676.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=12&amp;PostID=5676</wfw:commentRss><description>Θεωριτικά, δε θα μπορούσες να κάνεις remove το handler σου απ'το event;&lt;br&gt;&lt;br&gt;( Δεν το έχω δοκιμάσει βέβαια σε οποιοδήποτε component της Infragistics, και για να είμαι ειλικρινής δε θυμάμαι και τη σύνταξη σε VB, οπότε ... forgive me if I'm wrong)</description></item><item><title>Απ: Tree node check</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/5675.aspx</link><pubDate>Fri, 23 Sep 2005 20:22:15 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:5675</guid><dc:creator>Χρήστος Γεωργακόπουλος</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/5675.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=12&amp;PostID=5675</wfw:commentRss><description>Δεν έχω βρει κάτι άλλο, παρ' όλο που έχω ασχοληθεί πολύ με TreeViews. Εμένα πάντως αυτό με έχει καλύψει σε όλες τις περιπτώσεις που έχω recursion στα nodes. Πάντως όπως είπα, μου φαίνεται λογικό να μην μπορούν να κλείσουν τα έμμεσα events.</description></item><item><title>Απ: Tree node check</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/5674.aspx</link><pubDate>Fri, 23 Sep 2005 20:17:56 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:5674</guid><dc:creator>axaros</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/5674.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=12&amp;PostID=5674</wfw:commentRss><description>&lt;P&gt;Χρήστο ευχαριστώ. Ήταν λίγο ατυχής η διατύπωση μου ...&lt;BR&gt;το ίδιο πράγμα περιγράφουμε ... Αυτό κάνω και τώρα με ένα extra bypass variable.&lt;BR&gt;Κάτι άλλο δεν υπάρχει ;&lt;/P&gt;</description></item><item><title>Απ: Tree node check</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/5673.aspx</link><pubDate>Fri, 23 Sep 2005 20:10:56 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:5673</guid><dc:creator>Χρήστος Γεωργακόπουλος</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/5673.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=12&amp;PostID=5673</wfw:commentRss><description>&lt;P&gt;Το να μην χτυπήσει το event δεν μπορείς και δεν πρέπει να το αποφύγεις. Όντως τσεκάρονται nodes, και πρέπει τα events να γίνονται raise κανονικά. Αυτό που θέλεις να αποφύγεις είναι να εκτελέσεις τον κώδικά σου που τρέχει όταν σηκώνεται το event περισσότερες από μία φορές.&lt;/P&gt;
&lt;P&gt;Οπότε, θα πρέπει ο handler σου να έχει ένα flag, το οποίο θα ελέγχει, το οποίο να του λέει αν το event σηκώθηκε επειδή ο χρήστης τσέκαρε ένα node, ή αν πρόκειται για αυτόματο τσεκάρισμα των subnodes.&lt;/P&gt;
&lt;P&gt;Πχ, μπορείς να έχεις μια μεταβλητή:&lt;/P&gt;
&lt;P&gt;&lt;span style="color: Black;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;&lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;Private&lt;/span&gt; IsAutoChecking &lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;As&lt;/span&gt; &lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;Boolean&lt;/span&gt; &lt;span style="color: Red;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;=&lt;/span&gt; &lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;False&lt;/span&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;και στον handler σου να έχεις:&lt;/P&gt;
&lt;P&gt;&lt;span style="color: Black;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;Public&lt;/span&gt; &lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;Sub&lt;/span&gt; MyHandler(sender &lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;as&lt;/span&gt; &lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;Object&lt;/span&gt;, e &lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;as&lt;/span&gt; System.EventArgs) &lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;handles&lt;/span&gt; MyTreeView.BeforeCheck&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;If&lt;/span&gt; &lt;span style="color: Red;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;Not&lt;/span&gt; IsAutoChecking &lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;Then&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;IsAutoChecking &lt;span style="color: Red;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;=&lt;/span&gt; &lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;True&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: Green;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;'Do some other stuff&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;IsAutoChecking &lt;span style="color: Red;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;=&lt;/span&gt; &lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;False&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;End&lt;/span&gt; &lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;If&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;End&lt;/span&gt; &lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;Sub&lt;/span&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;Οπότε το "Do some stuff" θα γίνει μόνο μια φορά για το πρώτο node το οποίο επιλέγεται από τον ίδιο το χρήστη.&lt;/P&gt;</description></item><item><title>Tree node check</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/5672.aspx</link><pubDate>Fri, 23 Sep 2005 19:57:54 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:5672</guid><dc:creator>axaros</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/5672.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=12&amp;PostID=5672</wfw:commentRss><description>&lt;P&gt;Καλημέρα σε όλους :&lt;BR&gt;Αν στο checkNode event κάποιου tree control (στην περίπτωση μου UltraTree της Infragistics)&lt;BR&gt;ήθελα να "τσεκάρω" και όλα τα children του συγκεκριμένου node, πως θα αποφύγω να ξαναχτυπήσει&lt;BR&gt;το event;&lt;BR&gt;&lt;BR&gt;Τώρα το κάνω (bypass) κάπως άσχημα&amp;nbsp;με ένα boolean :&lt;BR&gt;&lt;/P&gt;&lt;FONT size=2&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;
&lt;P&gt;Protected&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Overrides&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Sub&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; CheckTreeNodes(&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;ByVal&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; e &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT color=#000000&gt; Infragistics.Win.UltraWinTree.NodeEventArgs)&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Try&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;If&lt;/FONT&gt;&lt;FONT size=2&gt; ByPassTreeNodeChange &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Exit&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Sub&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;End&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;If&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;FONT size=2&gt;Cursor.Current = Cursors.WaitCursor&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;ByPassTreeNodeChange = &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;True&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;FONT size=2&gt;CheckTheNodes(e)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;ByPassTreeNodeChange = &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;False&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;/FONT&gt;
&lt;P&gt;&lt;FONT color=#0000ff size=2&gt;&lt;/P&gt;&lt;/FONT&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;Υπάρχει καλύτερος τρόπος;&lt;/P&gt;</description></item></channel></rss>