<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-2503466352804390526</id><updated>2011-11-27T16:55:50.038-08:00</updated><category term='.NET'/><title type='text'>Technologiques</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://technologiques.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2503466352804390526/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://technologiques.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Geethan</name><uri>http://www.blogger.com/profile/10738447768171702013</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp3.blogger.com/_HHrekVLvxJY/R8EeGfUXdsI/AAAAAAAAABE/u1l_gTuqZ_c/S220/calvin(2).jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>7</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-2503466352804390526.post-3586217051162990846</id><published>2009-11-09T06:18:00.000-08:00</published><updated>2009-11-09T06:30:13.924-08:00</updated><title type='text'>My follow up to you're listening!</title><content type='html'>&lt;br/&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_HHrekVLvxJY/SvglCRj8gQI/AAAAAAAAAQI/E9ohzyvJ3Tc/s1600-h/xkcd+follow+up.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 560px; height: 280px;" src="http://lh6.ggpht.com/_HHrekVLvxJY/SvglCRj8gQI/AAAAAAAAAQI/E9ohzyvJ3Tc/s800/xkcd%20follow%20up.jpg" /&gt;&lt;/a&gt;&lt;br /&gt;Checkout the original xkcd comic here : &lt;a href="http://xkcd.com/525/"&gt;http://xkcd.com/525/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2503466352804390526-3586217051162990846?l=technologiques.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://technologiques.blogspot.com/feeds/3586217051162990846/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2503466352804390526&amp;postID=3586217051162990846' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2503466352804390526/posts/default/3586217051162990846'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2503466352804390526/posts/default/3586217051162990846'/><link rel='alternate' type='text/html' href='http://technologiques.blogspot.com/2009/11/my-follow-up-to-youre-listening.html' title='My follow up to you&apos;re listening!'/><author><name>Geethan</name><uri>http://www.blogger.com/profile/10738447768171702013</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp3.blogger.com/_HHrekVLvxJY/R8EeGfUXdsI/AAAAAAAAABE/u1l_gTuqZ_c/S220/calvin(2).jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_HHrekVLvxJY/SvglCRj8gQI/AAAAAAAAAQI/E9ohzyvJ3Tc/s72-c/xkcd%20follow%20up.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2503466352804390526.post-4611367710154547732</id><published>2009-08-18T23:41:00.000-07:00</published><updated>2009-08-18T23:45:45.131-07:00</updated><title type='text'>Inkscape And Hand Tool</title><content type='html'>If you have ever wondered and wanted to use the hand tool in Inkscape, you can do so by the following techniques :&lt;br /&gt;&lt;br /&gt;1. You middle click and drag your mouse for panning the document.&lt;br /&gt;2. Or go to, File-&gt;Inkscape Preferences-&gt;Scrolling. Then check on the "Left click pans when space is pressed". Presto! Now you can use the spacebar to pan the document, as you would normally do!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2503466352804390526-4611367710154547732?l=technologiques.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://technologiques.blogspot.com/feeds/4611367710154547732/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2503466352804390526&amp;postID=4611367710154547732' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2503466352804390526/posts/default/4611367710154547732'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2503466352804390526/posts/default/4611367710154547732'/><link rel='alternate' type='text/html' href='http://technologiques.blogspot.com/2009/08/inkscape-and-hand-tool.html' title='Inkscape And Hand Tool'/><author><name>Geethan</name><uri>http://www.blogger.com/profile/10738447768171702013</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp3.blogger.com/_HHrekVLvxJY/R8EeGfUXdsI/AAAAAAAAABE/u1l_gTuqZ_c/S220/calvin(2).jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2503466352804390526.post-1415385545397389758</id><published>2009-06-04T03:17:00.000-07:00</published><updated>2009-06-04T03:26:34.614-07:00</updated><title type='text'>Gmail and &lt;eom&gt;</title><content type='html'>Gmail is interestingly smart. I always hated when gmail pops up the question "Send this message without text in the body?". But recently I discovered that the question can be suppressed by adding the end of mail slang &lt;span style="font-weight:bold;"&gt;&amp;lt;eom&amp;gt;&lt;/span&gt; to the subject line.&lt;br /&gt;&lt;br /&gt;A time saver.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2503466352804390526-1415385545397389758?l=technologiques.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://technologiques.blogspot.com/feeds/1415385545397389758/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2503466352804390526&amp;postID=1415385545397389758' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2503466352804390526/posts/default/1415385545397389758'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2503466352804390526/posts/default/1415385545397389758'/><link rel='alternate' type='text/html' href='http://technologiques.blogspot.com/2009/06/gmail-and.html' title='Gmail and &amp;lt;eom&amp;gt;'/><author><name>Geethan</name><uri>http://www.blogger.com/profile/10738447768171702013</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp3.blogger.com/_HHrekVLvxJY/R8EeGfUXdsI/AAAAAAAAABE/u1l_gTuqZ_c/S220/calvin(2).jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2503466352804390526.post-4367718736463656938</id><published>2008-06-13T01:12:00.000-07:00</published><updated>2009-11-09T00:24:48.856-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><title type='text'>ToolTip and "Cannot access a disposed object" exception</title><content type='html'>&lt;div&gt;&lt;br /&gt;The "Cannot access a disposed object" exception is a nightmare for .NET developers. ;) Sometimes, this exception causes the worst backslash for a development project. And looking at exception details, we will find that the call stack will point to&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;"at System.Windows.Forms.Control.CreateHandle()&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&amp;nbsp;at System.Windows.Forms.Control.get_Handle()  "&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Or&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;"at System.Windows.Forms.Form.CreateHandle()&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&amp;nbsp;at System.Windows.Forms.Form.get_Handle()   "&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Since, we do not know from where the problem stems, it becomes a trial-and-error method to find out the source of the problem. After some days of research, I found out the following facts about the problem. Here it goes.&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Reason : &lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;This exception occurs only when we try to access any disposed object, as it says. But the problem is, we would have never written statements that explicitly access a disposed object! So the real reason would be some unseen code that accesses the disposed Form or Object. In my case, the black sheep was the ToolTip control.&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;I had used the ToolTip to show messages on different forms. But the internal architecture of the ToolTip has been coded by a novice at Microsoft i guess, and its faulty. By going through reflection i found that it uses a variable to store the current form in which it the message is being displayed. I had used the same instance of ToolTip to show messages on other forms too. When I used the ToolTip to show messages on another form after the previous form has been closed, the ToolTip tries to access the form in its private variable (the closed/disposed form)  and boom! It throws the exception!&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;Another instance where this can happen is - Dockable Container, this happens with ToolTip when the container is changed/docked to another parent. Now since, the parent is changed, when the ToolTip tries to access the parent and it is already disposed. So the exception is thrown.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Solution:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;   &lt;/span&gt;&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;The solution I devised was to create a new ToolTip instance for every Form that I showed on the screen. This worked around the problem and it was solved. For those, with Dockable Container problem, try to recreate the controls when they are moved or docked. This will solve the problem.&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;And microsoft is supposed to have corrected this problem in v3.5 framework. But I haven't checked it out yet.&lt;span style="font-weight: bold;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2503466352804390526-4367718736463656938?l=technologiques.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://technologiques.blogspot.com/feeds/4367718736463656938/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2503466352804390526&amp;postID=4367718736463656938' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2503466352804390526/posts/default/4367718736463656938'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2503466352804390526/posts/default/4367718736463656938'/><link rel='alternate' type='text/html' href='http://technologiques.blogspot.com/2008/06/tooltip-and-cannot-access-disposed.html' title='ToolTip and &quot;Cannot access a disposed object&quot; exception'/><author><name>Geethan</name><uri>http://www.blogger.com/profile/10738447768171702013</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp3.blogger.com/_HHrekVLvxJY/R8EeGfUXdsI/AAAAAAAAABE/u1l_gTuqZ_c/S220/calvin(2).jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2503466352804390526.post-8214840350527573287</id><published>2008-06-11T05:39:00.000-07:00</published><updated>2009-11-09T00:24:04.736-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><title type='text'>Finding whether its Design Mode or Runtime Mode in VB.NET</title><content type='html'>Sometimes, while creating controls, either by Inherited Controls or UserControls, we will be required to skip a piece of code depending upon the design time or runtime mode. This can be done easily by the following code inside a control.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;If Me.Site IsNot Nothing AndAlso Me.Site.DesignMode = True Then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;'Designtime code here&lt;br /&gt;Else&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;'Runtime code here&lt;br /&gt;End If&lt;br /&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Using this code in a control, we can find the mode and avoid certain errors when in Design Mode. This is mostly used in overridden event methods in Inherited Controls.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2503466352804390526-8214840350527573287?l=technologiques.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://technologiques.blogspot.com/feeds/8214840350527573287/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2503466352804390526&amp;postID=8214840350527573287' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2503466352804390526/posts/default/8214840350527573287'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2503466352804390526/posts/default/8214840350527573287'/><link rel='alternate' type='text/html' href='http://technologiques.blogspot.com/2008/06/finding-whether-its-design-mode-or.html' title='Finding whether its Design Mode or Runtime Mode in VB.NET'/><author><name>Geethan</name><uri>http://www.blogger.com/profile/10738447768171702013</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp3.blogger.com/_HHrekVLvxJY/R8EeGfUXdsI/AAAAAAAAABE/u1l_gTuqZ_c/S220/calvin(2).jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2503466352804390526.post-5792502773681652006</id><published>2008-06-03T10:43:00.000-07:00</published><updated>2009-11-09T00:25:57.429-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><title type='text'>Update requires a valid UpdateCommand when passed DataRow collection with modified rows</title><content type='html'>&lt;br/&gt;&lt;br /&gt;This is an error, with which i was dumbfounded for weeks. The problem is simple. I have a DataSet and it automatically generates INSERT command. So i can add rows to the DataSet and update it easily. But whenever i change values in existing rows and update it via TableAdapter, I get this exception &lt;strong&gt;"Update requires a valid UpdateCommand when passed DataRow collection with modified rows"&lt;/strong&gt;. I found inside the generated code that only INSERT command is generated. Whatever i try, the DataSet designer would not create an UPDATE command nor a DELETE command for this TableAdapter.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Solution 1:&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;You can select the TableAdapter and write your own query for the update command in the property dialog box. &lt;br /&gt;&lt;br /&gt;But this is not a good idea.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Solution 2: (Better one)&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;The problem lies within your table design. Check it out again and check whether you have created a &lt;strong&gt;primary key&lt;/strong&gt; for the table. Mostly this will be the case, as I forgot to create one. Now after creating the primary key, you can recreate the DataSets to get the corresponding UPDATE and DELETE statements.&lt;br /&gt;&lt;br /&gt;But if you do not want a primary key in your table, you may resort to first solution.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Cheers.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2503466352804390526-5792502773681652006?l=technologiques.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://technologiques.blogspot.com/feeds/5792502773681652006/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2503466352804390526&amp;postID=5792502773681652006' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2503466352804390526/posts/default/5792502773681652006'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2503466352804390526/posts/default/5792502773681652006'/><link rel='alternate' type='text/html' href='http://technologiques.blogspot.com/2008/06/update-requires-valid-updatecommand.html' title='Update requires a valid UpdateCommand when passed DataRow collection with modified rows'/><author><name>Geethan</name><uri>http://www.blogger.com/profile/10738447768171702013</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp3.blogger.com/_HHrekVLvxJY/R8EeGfUXdsI/AAAAAAAAABE/u1l_gTuqZ_c/S220/calvin(2).jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2503466352804390526.post-3130964458709072057</id><published>2008-05-30T12:29:00.000-07:00</published><updated>2009-11-09T00:22:40.074-08:00</updated><title type='text'>Welcome</title><content type='html'>First post :) Have fun!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2503466352804390526-3130964458709072057?l=technologiques.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://technologiques.blogspot.com/feeds/3130964458709072057/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2503466352804390526&amp;postID=3130964458709072057' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2503466352804390526/posts/default/3130964458709072057'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2503466352804390526/posts/default/3130964458709072057'/><link rel='alternate' type='text/html' href='http://technologiques.blogspot.com/2008/05/welcome.html' title='Welcome'/><author><name>Geethan</name><uri>http://www.blogger.com/profile/10738447768171702013</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp3.blogger.com/_HHrekVLvxJY/R8EeGfUXdsI/AAAAAAAAABE/u1l_gTuqZ_c/S220/calvin(2).jpg'/></author><thr:total>0</thr:total></entry></feed>
