<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.technet.com/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>Hello Kirti : AutoComplete</title><link>http://blogs.technet.com/kirtid/archive/tags/AutoComplete/default.aspx</link><description>Tags: AutoComplete</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>Community Contributions in Toolkit release 10920</title><link>http://blogs.technet.com/kirtid/archive/2007/09/24/community-contributions-in-toolkit-release-10920.aspx</link><pubDate>Mon, 24 Sep 2007 10:19:26 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:2031014</guid><dc:creator>kirtid</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.technet.com/kirtid/comments/2031014.aspx</comments><wfw:commentRss>http://blogs.technet.com/kirtid/commentrss.aspx?PostID=2031014</wfw:commentRss><wfw:comment>http://blogs.technet.com/kirtid/rsscomments.aspx?PostID=2031014</wfw:comment><description>When I wrote my previous blog post I was in a rush to make the release announcement because we had a lot of users waiting eagerly for it. But I did not get a chance to thank our users who contributed patches to the Toolkit and made the release a success....(&lt;a href="http://blogs.technet.com/kirtid/archive/2007/09/24/community-contributions-in-toolkit-release-10920.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=2031014" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/kirtid/archive/tags/Toolkit/default.aspx">Toolkit</category><category domain="http://blogs.technet.com/kirtid/archive/tags/AutoComplete/default.aspx">AutoComplete</category><category domain="http://blogs.technet.com/kirtid/archive/tags/MaskedEdit/default.aspx">MaskedEdit</category><category domain="http://blogs.technet.com/kirtid/archive/tags/CascadingDropDown/default.aspx">CascadingDropDown</category><category domain="http://blogs.technet.com/kirtid/archive/tags/ValidatorCallout/default.aspx">ValidatorCallout</category><category domain="http://blogs.technet.com/kirtid/archive/tags/Calendar/default.aspx">Calendar</category><category domain="http://blogs.technet.com/kirtid/archive/tags/DropDown/default.aspx">DropDown</category></item><item><title>Cascading AutoComplete</title><link>http://blogs.technet.com/kirtid/archive/2007/05/17/cascading-autocomplete.aspx</link><pubDate>Thu, 17 May 2007 10:52:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:985087</guid><dc:creator>kirtid</dc:creator><slash:comments>10</slash:comments><comments>http://blogs.technet.com/kirtid/comments/985087.aspx</comments><wfw:commentRss>http://blogs.technet.com/kirtid/commentrss.aspx?PostID=985087</wfw:commentRss><wfw:comment>http://blogs.technet.com/kirtid/rsscomments.aspx?PostID=985087</wfw:comment><description>We have received a lot of feedback from users about not being able to pass additional information to the AutoComplete webservice which limits their usage of the extender. We decided to absorb that input and add support to all extenders that issue XmlHttpRequests...(&lt;a href="http://blogs.technet.com/kirtid/archive/2007/05/17/cascading-autocomplete.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=985087" width="1" height="1"&gt;</description><enclosure url="http://blogs.technet.com/kirtid/attachment/985087.ashx" length="566861" type="application/x-zip-compressed" /><category domain="http://blogs.technet.com/kirtid/archive/tags/Toolkit/default.aspx">Toolkit</category><category domain="http://blogs.technet.com/kirtid/archive/tags/AJAX/default.aspx">AJAX</category><category domain="http://blogs.technet.com/kirtid/archive/tags/AutoComplete/default.aspx">AutoComplete</category></item><item><title>Feature complete AutoComplete extender? Not yet.</title><link>http://blogs.technet.com/kirtid/archive/2007/03/29/feature-complete-autocomplete-extender-not-yet.aspx</link><pubDate>Fri, 30 Mar 2007 01:48:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:717833</guid><dc:creator>kirtid</dc:creator><slash:comments>6</slash:comments><comments>http://blogs.technet.com/kirtid/comments/717833.aspx</comments><wfw:commentRss>http://blogs.technet.com/kirtid/commentrss.aspx?PostID=717833</wfw:commentRss><wfw:comment>http://blogs.technet.com/kirtid/rsscomments.aspx?PostID=717833</wfw:comment><description>&lt;P&gt;I just finished making a bunch of changes to the &lt;A class="" title=AutoComplete href="http://ajax.asp.net/ajaxtoolkit/AutoComplete/AutoComplete.aspx" mce_href="http://ajax.asp.net/ajaxtoolkit/AutoComplete/AutoComplete.aspx"&gt;AutoComplete&lt;/A&gt; extender in the &lt;A class="" title=Toolkit href="http://ajax.asp.net/ajaxtoolkit/" mce_href="http://ajax.asp.net/ajaxtoolkit/"&gt;Toolkit&lt;/A&gt;. You can now css style the &lt;A class="" title=AutoComplete href="http://ajax.asp.net/ajaxtoolkit/AutoComplete/AutoComplete.aspx" mce_href="http://ajax.asp.net/ajaxtoolkit/AutoComplete/AutoComplete.aspx"&gt;AutoComplete&lt;/A&gt;&amp;nbsp;extender and make it as fancy as you would like it to be, well, as long as the completed content is text, which is what we support right now. But it is still pretty straightforward and meets most common scenarios. And hey, it is free! So you can &lt;A class="" title="Toolkit Source Download link" href="http://www.codeplex.com/AtlasControlToolkit/SourceControl/ListDownloadableCommits.aspx" mce_href="http://www.codeplex.com/AtlasControlToolkit/SourceControl/ListDownloadableCommits.aspx"&gt;download&lt;/A&gt; the source code at this very&amp;nbsp;moment and start playing with it, even deploy it right away. These changes will be part of our official release within the next couple of months but there is nothing stopping you from using the latest bits. If you run into issues, please post them on our &lt;A class="" title=Forum href="http://forums.asp.net/1022/ShowForum.aspx" mce_href="http://forums.asp.net/1022/ShowForum.aspx"&gt;forum&lt;/A&gt; or report a &lt;A class="" title="New bug" href="http://www.codeplex.com/AtlasControlToolkit/WorkItem/Create.aspx" mce_href="http://www.codeplex.com/AtlasControlToolkit/WorkItem/Create.aspx"&gt;bug&lt;/A&gt;. &lt;/P&gt;
&lt;P&gt;The autocomplete flyout is a custom menu and we need to handle keyboard and mouse events explicitly. We also have one more task at hand which is making the extender accessible, which means that the menu html needs to be keyboard usable, use semantic html and be in the right dom order to start with. There is more to AJAX accessibility than that of course;&amp;nbsp;as you delve deeper to add regular features which need to be implemented to meet core scenarios you will&amp;nbsp;always discover that they need nasty workarounds to ensure accessibility and cross browser support. The browser as an application platform is not fun to work with given its eccentricities.&lt;/P&gt;
&lt;P&gt;Anyways, back to the accessibility features...To achieve DOM order correctness, the autocomplete flyout element is now inserted right after the textbox; which means that it will be in the screen reader's list to read out loud next. The other issue is keyboard support, which was already present in the&amp;nbsp;extender&amp;nbsp;but needed to be tweaked to work with scrolling. In&amp;nbsp;cases such as this one, it is most useful to operate as closely as existing menu controls to avoid any learning curve and introduce behavior that is not very intuitive which just means more work to be done in the extender itself. The keyboard support now handles scrolling which I compute based of the scrollHeight, scrollTop and clientHeight &lt;A class="" title="element bounds properties" href="http://msdn.microsoft.com/library/default.asp?url=/workshop/author/dhtml/reference/objects/div.asp" mce_href="http://msdn.microsoft.com/library/default.asp?url=/workshop/author/dhtml/reference/objects/div.asp"&gt;properties&lt;/A&gt; on the flyout element. I was attempting to use &lt;A class="" title="Scroll into view" href="http://msdn.microsoft.com/library/default.asp?url=/workshop/author/dhtml/reference/methods/scrollintoview.asp" mce_href="http://msdn.microsoft.com/library/default.asp?url=/workshop/author/dhtml/reference/methods/scrollintoview.asp"&gt;scrollIntoView&lt;/A&gt; to avoid performing the computations myself but it was based off the window and it resulted in the whole window scrolling when I hit the down/up arrows in the flyout. &lt;A class="" title="Bertrand's blog" href="http://weblogs.asp.net/bleroy/default.aspx" mce_href="http://weblogs.asp.net/bleroy/default.aspx"&gt;Bertrand Le Roy&lt;/A&gt;, a developer from the &lt;A class="" title="ASP.Net AJAX" href="http://ajax.asp.net/" mce_href="http://ajax.asp.net/"&gt;ASP.Net AJAX&lt;/A&gt; team and my accessibility cohort, recommended that I do it myself and that turned out to be the safest bet, worked across browsers and was under my control. The third thing was semantic html which was an almost easy fix, but one which will go a long way in making the autocomplete flyout useful for people with disabilities. The flyout markup is now an unordered list and that helps clarify the purpose of the element to the user. An additional accessibility feature came in as a freebie. I earned it by making the flyout css stylable, support in &lt;A class="" title="High Contrast" href="http://www.microsoft.com/windowsxp/using/accessibility/highcontrast.mspx" mce_href="http://www.microsoft.com/windowsxp/using/accessibility/highcontrast.mspx"&gt;High Contrast&lt;/A&gt; mode. The color and background of the flyout can be friendlier in that scenario. Although, I have to admit that&amp;nbsp;the colors I have chosen on the Toolkit &lt;A class="" title="Sample website" href="http://ajax.asp.net/ajaxtoolkit" mce_href="http://ajax.asp.net/ajaxtoolkit"&gt;sample website&lt;/A&gt; autocomplete menu will not work very well in high contrast. My reasoning? I was lazy to find colors that worked in normal mode in all browsers and&amp;nbsp;that would work in high contrast as well.&lt;/P&gt;
&lt;P&gt;What about localization? We already support localizing strings in the &lt;A class="" title=Toolkit href="http://ajax.asp.net/ajaxtoolkit/" mce_href="http://ajax.asp.net/ajaxtoolkit/"&gt;Toolkit&lt;/A&gt;&amp;nbsp;but with css styling in, left-to-right and right-to-left settings are a piece of cake, chocolate cake perhaps...better and better!&lt;/P&gt;
&lt;P&gt;So the &lt;A class="" title=AutoComplete href="http://ajax.asp.net/ajaxtoolkit/AutoComplete/AutoComplete.aspx" mce_href="http://ajax.asp.net/ajaxtoolkit/AutoComplete/AutoComplete.aspx"&gt;AutoComplete&lt;/A&gt;&amp;nbsp;extender supports theming as do all extenders in the Toolkit, is xhtml compliant, has international support, is almost accessible and very stylable. What's next?&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Additional keys support like "home", "end", left/right arrows&lt;/LI&gt;
&lt;LI&gt;Ability to pass additional data to the webservice; currently you can only pass the text in textbox and the number of suggestions you would like&lt;/LI&gt;
&lt;LI&gt;Custom return types? Like pictures in the list? Wow, that would be nice but not on the radar right away...&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Take a look at our &lt;A class="" title="Issue tracker" href="http://www.codeplex.com/AtlasControlToolkit/WorkItem/AdvancedList.aspx" mce_href="http://www.codeplex.com/AtlasControlToolkit/WorkItem/AdvancedList.aspx"&gt;bugs list&lt;/A&gt; to see if someone is already demanding for something you may be looking for as well. &lt;/P&gt;
&lt;P&gt;Onto a&amp;nbsp;"Feature Complete" AutoComplete extender!&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=717833" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/kirtid/archive/tags/Toolkit/default.aspx">Toolkit</category><category domain="http://blogs.technet.com/kirtid/archive/tags/Accessibility/default.aspx">Accessibility</category><category domain="http://blogs.technet.com/kirtid/archive/tags/xhtml/default.aspx">xhtml</category><category domain="http://blogs.technet.com/kirtid/archive/tags/Localization/default.aspx">Localization</category><category domain="http://blogs.technet.com/kirtid/archive/tags/Theming/default.aspx">Theming</category><category domain="http://blogs.technet.com/kirtid/archive/tags/Css/default.aspx">Css</category><category domain="http://blogs.technet.com/kirtid/archive/tags/AutoComplete/default.aspx">AutoComplete</category></item></channel></rss>