<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Antferr &#187; ASP.NET</title>
	<atom:link href="http://www.antferr.com/category/aspnet/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.antferr.com</link>
	<description>Information and communication technology me.think.toString(&#34;blog&#34;);</description>
	<lastBuildDate>Mon, 17 Oct 2011 08:44:18 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
		<item>
		<title>Linq to Xml – gestione news (part 2)</title>
		<link>http://www.antferr.com/aspnet/linq-to-xml-gestione-news-part-2/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=linq-to-xml-gestione-news-part-2</link>
		<comments>http://www.antferr.com/aspnet/linq-to-xml-gestione-news-part-2/#comments</comments>
		<pubDate>Thu, 08 Jul 2010 08:12:49 +0000</pubDate>
		<dc:creator>antferr</dc:creator>
				<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[Linq]]></category>
		<category><![CDATA[xml]]></category>

		<guid isPermaLink="false">http://www.antferr.com/?p=531</guid>
		<description><![CDATA[
			
				
			
		
Continuando quanto cominciato con la prima parte di questo tutorial implemento le altre due funzionalità fondamentali, ovvero la cancellazione e l&#8217;aggiornamento di una notizia.







Cancellazione
Come per la creazione creiamo un XDocument con li file delle news, poi individuiamo  [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.antferr.com%2Faspnet%2Flinq-to-xml-gestione-news-part-2%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.antferr.com%2Faspnet%2Flinq-to-xml-gestione-news-part-2%2F&amp;source=antferr&amp;style=normal&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p>Continuando quanto cominciato con la <a href="http://www.antferr.com/c/linq-to-xml-gestione-news-part-1/">prima parte</a> di questo tutorial implemento le altre due funzionalità fondamentali, ovvero la cancellazione e l&#8217;aggiornamento di una notizia.<br />

<!-- Begin Google Adsense code -->
<script type="text/javascript"><!--
google_ad_client = "pub-6474961034063636";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text_image";
google_ad_channel = "";
//-->
</script>
<script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<h4>Cancellazione</h4>
<p>Come per la creazione creiamo un XDocument con li file delle news, poi individuiamo la notizia con l&#8217;attributo id corrispondete a quella che vogliamo eliminare e facciamo una Remove(). Non ci resta che salvare il file.</p>

<div class="wp_codebox_msgheader wp_codebox_hide"><span class="right"><sup><span style="color: #99cc00"></span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p531code3'); return false;">Mostra codice</a> CSHARP</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p5313"><td class="code" id="p531code3"><pre class="csharp" style="font-family:monospace;"> XDocument newsXML <span style="color: #008000;">=</span> XDocument<span style="color: #008000;">.</span><span style="color: #0000FF;">Load</span><span style="color: #008000;">&#40;</span>Server<span style="color: #008000;">.</span><span style="color: #0000FF;">MapPath</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;App_Data<span style="color: #008080; font-weight: bold;">\\</span>News.xml&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
 newsXML<span style="color: #008000;">.</span><span style="color: #0000FF;">XPathSelectElement</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;News/Notizia[@Id = '&quot;</span> <span style="color: #008000;">+</span> idNews <span style="color: #008000;">+</span> <span style="color: #666666;">&quot;']&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">.</span><span style="color: #0000FF;">Remove</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
 newsXML<span style="color: #008000;">.</span><span style="color: #0000FF;">Save</span><span style="color: #008000;">&#40;</span>Server<span style="color: #008000;">.</span><span style="color: #0000FF;">MapPath</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;App_Data<span style="color: #008080; font-weight: bold;">\\</span>News.xml&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span></pre></td></tr></table></div>

<h4>Modifica</h4>
<p>Per la modifica utilizziamo la stessa tecnica usata per la cancellazione con l&#8217;unica differenza che non invochiamo la Remove() ma ma aggiorniamo i campi della notizia che intendiamo modificare</p>

<div class="wp_codebox_msgheader wp_codebox_hide"><span class="right"><sup><span style="color: #99cc00"></span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p531code4'); return false;">Mostra codice</a> CSHARP</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p5314"><td class="code" id="p531code4"><pre class="csharp" style="font-family:monospace;">XDocument newsXML <span style="color: #008000;">=</span> XDocument<span style="color: #008000;">.</span><span style="color: #0000FF;">Load</span><span style="color: #008000;">&#40;</span>Server<span style="color: #008000;">.</span><span style="color: #0000FF;">MapPath</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;App_Data<span style="color: #008080; font-weight: bold;">\\</span>News.xml&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
 XElement notizia<span style="color: #008000;">=</span> newsXML<span style="color: #008000;">.</span><span style="color: #0000FF;">XPathSelectElement</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;News/Notizia[@Id = '&quot;</span> <span style="color: #008000;">+</span> _idNews <span style="color: #008000;">+</span> <span style="color: #666666;">&quot;']&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
 notizia<span style="color: #008000;">.</span><span style="color: #0000FF;">Element</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;Title&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">.</span><span style="color: #0000FF;">Value</span> <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;Nuovo Titolo&quot;</span><span style="color: #008000;">;</span>
 notizia<span style="color: #008000;">.</span><span style="color: #0000FF;">Element</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;Text&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">.</span><span style="color: #0000FF;">Value</span> <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;Nuovo testo&quot;</span><span style="color: #008000;">;</span>
 notizia<span style="color: #008000;">.</span><span style="color: #0000FF;">Element</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;Data&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">.</span><span style="color: #0000FF;">Value</span> <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;31/12/2010&quot;</span><span style="color: #008000;">;</span>
 notizia<span style="color: #008000;">.</span><span style="color: #0000FF;">Element</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;Evidence&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">.</span><span style="color: #0000FF;">Value</span> <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;False&quot;</span><span style="color: #008000;">;</span>
 newsXML<span style="color: #008000;">.</span><span style="color: #0000FF;">Save</span><span style="color: #008000;">&#40;</span>Server<span style="color: #008000;">.</span><span style="color: #0000FF;">MapPath</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;App_Data<span style="color: #008080; font-weight: bold;">\\</span>News.xml&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span></pre></td></tr></table></div>

<p class="buymebeer"><form action="https://www.paypal.com/cgi-bin/webscr" target="paypal" method="post"><input type="hidden" name="cmd" value="_xclick" /><input type="hidden" name="business" value="antferr@gmail.com" /><input type="hidden" name="return" value="" /><input type="hidden" name="item_name" value="Buy Me a Beer for Linq to Xml – gestione news (part 2)" /><input type="hidden" name="amount" value="" /><input type="image" src="http://www.antferr.com/wp-content/plugins/buy-me-beer/icon_cafe.gif" align="left" alt="Mi offri un caffè?" title="Mi offri un caffè?" hspace="3" /></form><a href="https://www.paypal.com/cgi-bin/webscr?cmd=_xclick&amp;business=antferr@gmail.com&amp;amount=&amp;return=&amp;item_name=Buy+Me+a+Beer+for+Linq+to+Xml+–+gestione+news+(part+2)" target="paypal">Se i miei post ti sono stati di aiuto o ti sono sembrati intressanti puoi offrirmi un caffè :)</a></p>]]></content:encoded>
			<wfw:commentRss>http://www.antferr.com/aspnet/linq-to-xml-gestione-news-part-2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Linq to Xml – gestione news (part 1)</title>
		<link>http://www.antferr.com/aspnet/linq-to-xml-gestione-news-part-1/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=linq-to-xml-gestione-news-part-1</link>
		<comments>http://www.antferr.com/aspnet/linq-to-xml-gestione-news-part-1/#comments</comments>
		<pubDate>Wed, 07 Jul 2010 09:57:09 +0000</pubDate>
		<dc:creator>antferr</dc:creator>
				<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[Linq]]></category>
		<category><![CDATA[xml]]></category>

		<guid isPermaLink="false">http://www.antferr.com/?p=501</guid>
		<description><![CDATA[
			
				
			
		
Linq è molto semplice da imparare e nel contempo molto potente. Linq dispone di quattro implementazioni: Linq to Sql, Linq to Entities, Linq to DataSets, Linq to Object e Linq to XML. In questo post cercherò di implementare un piccolo sistema di gestione delle news basato su Linq  [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.antferr.com%2Faspnet%2Flinq-to-xml-gestione-news-part-1%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.antferr.com%2Faspnet%2Flinq-to-xml-gestione-news-part-1%2F&amp;source=antferr&amp;style=normal&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p>Linq è molto semplice da imparare e nel contempo molto potente. Linq dispone di quattro implementazioni: Linq to Sql, Linq to Entities, Linq to DataSets, Linq to Object e Linq to XML. In questo post cercherò di implementare un piccolo sistema di gestione delle news basato su Linq to Xml.<br />
Partiamo dalla nostra sorgente dati, ovvero dal file XML. Esso è composto dal primo elemento &#8220;News&#8221; all&#8217;interno del quale sono contenute tutte le &#8220;Notizia&#8221;. Ogni notizia possiede un attributo identificativo &#8220;Id&#8221; che corrisponde alla data trasformata in stringa secondo la convenzione <em>yyyyMMddhhmmss</em>. Le notizie inoltre possiedono l&#8217;elemento &#8220;Data&#8221; che rappresenta la data dell&#8217;evento per cui è stata creata la news e un elemento &#8220;Evidence&#8221; per identificare le news più importanti.</p>

<div class="wp_codebox_msgheader wp_codebox_hide"><span class="right"><sup><span style="color: #99cc00"></span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p501code7'); return false;">Mostra codice</a> XML</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p5017"><td class="code" id="p501code7"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;?xml</span> <span style="color: #000066;">version</span>=<span style="color: #ff0000;">&quot;1.0&quot;</span> <span style="color: #000066;">encoding</span>=<span style="color: #ff0000;">&quot;utf-8&quot;</span><span style="color: #000000; font-weight: bold;">?&gt;</span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;News<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Notizia</span> <span style="color: #000066;">Id</span>=<span style="color: #ff0000;">&quot;20100707102340&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Title<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>My first new<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Title<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Text<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>My text,go on antferr.com<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Text<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Data<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>07/07/2010<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Data<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Evidence<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>True<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Evidence<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Notizia<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Notizia</span> <span style="color: #000066;">Id</span>=<span style="color: #ff0000;">&quot;20100706102340&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Title<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>My second new<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Title<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Text<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Hello readers<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Text<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Data<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>06/07/2010<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Data<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Evidence<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>True<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Evidence<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Notizia<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/News<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></td></tr></table></div>

<p>
<!-- Begin Google Adsense code -->
<script type="text/javascript"><!--
google_ad_client = "pub-6474961034063636";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text_image";
google_ad_channel = "";
//-->
</script>
<script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<br />
Fatto ciò non ci resta che creare la web application ASP.NET C#, ipotizzando di inserire il file xml nella directory App_Data e di chiamarlo semplicemente News.xml<br />
Partiamo dal backend, cioè dalla parte amministrativa che deve implementare le funzionalità di inserimento, modifica e cancellazione delle news.</p>
<h4>Inserimento</h4>

<div class="wp_codebox_msgheader wp_codebox_hide"><span class="right"><sup><span style="color: #99cc00"></span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p501code8'); return false;">Mostra codice</a> CSHARP</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p5018"><td class="code" id="p501code8"><pre class="csharp" style="font-family:monospace;">XDocument newsXML <span style="color: #008000;">=</span> XDocument<span style="color: #008000;">.</span><span style="color: #0000FF;">Load</span><span style="color: #008000;">&#40;</span>Server<span style="color: #008000;">.</span><span style="color: #0000FF;">MapPath</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;App_Data<span style="color: #008080; font-weight: bold;">\\</span>News.xml&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                XElement elemento <span style="color: #008000;">=</span> newsXML<span style="color: #008000;">.</span><span style="color: #0000FF;">Element</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;News&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                var notizia <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> XElement<span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;Notizia&quot;</span>, <span style="color: #008000;">new</span> XAttribute<span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;Id&quot;</span>, news<span style="color: #008000;">.</span><span style="color: #0000FF;">Id</span><span style="color: #008000;">&#41;</span>,
                    <span style="color: #008000;">new</span> XElement<span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;Title&quot;</span>, <span style="color: #666666;">&quot;Il mio titolo&quot;</span><span style="color: #008000;">&#41;</span>,
                    <span style="color: #008000;">new</span> XElement<span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;Text&quot;</span>, <span style="color: #666666;">&quot;Il mio testo&quot;</span><span style="color: #008000;">&#41;</span>,
                    <span style="color: #008000;">new</span> XElement<span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;Data&quot;</span>, <span style="color: #666666;">&quot;10/07/2010&quot;</span><span style="color: #008000;">&#41;</span>,
                    <span style="color: #008000;">new</span> XElement<span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;Evidence&quot;</span>, <span style="color: #666666;">&quot;True&quot;</span><span style="color: #008000;">&#41;</span>
                        <span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                elemento<span style="color: #008000;">.</span><span style="color: #0000FF;">Add</span><span style="color: #008000;">&#40;</span>notizia<span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                newsXML<span style="color: #008000;">.</span><span style="color: #0000FF;">Save</span><span style="color: #008000;">&#40;</span>Server<span style="color: #008000;">.</span><span style="color: #0000FF;">MapPath</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;App_Data<span style="color: #008080; font-weight: bold;">\\</span>News.xml&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span></pre></td></tr></table></div>

<p>Per far sì che il codice sopra funzioni correttamente è necessario aggiungere i riferimenti a System.Xml.Linq e System.Xml.XPath. Il funzionamento è molto semplice. Creiamo un oggetto di tipo XDocument all&#8217;interno del quale carichiamo il contenuto del nostro file xml, poi creiamo un oggetto di tipo XElement che conterrà il contenuto del tag <News>. A questo punto non ci resta che creare una nuova <Notizia> come un nuovo XElement da aggiungere sotto il tag <News> e salvare il file. Ovviamente il contenuto della news non dovrebbe essere cablato come in questo esempio ma derivante da input inseriti dall&#8217;amministratore.</p>
<p class="buymebeer"><form action="https://www.paypal.com/cgi-bin/webscr" target="paypal" method="post"><input type="hidden" name="cmd" value="_xclick" /><input type="hidden" name="business" value="antferr@gmail.com" /><input type="hidden" name="return" value="" /><input type="hidden" name="item_name" value="Buy Me a Beer for Linq to Xml – gestione news (part 1)" /><input type="hidden" name="amount" value="" /><input type="image" src="http://www.antferr.com/wp-content/plugins/buy-me-beer/icon_cafe.gif" align="left" alt="Mi offri un caffè?" title="Mi offri un caffè?" hspace="3" /></form><a href="https://www.paypal.com/cgi-bin/webscr?cmd=_xclick&amp;business=antferr@gmail.com&amp;amount=&amp;return=&amp;item_name=Buy+Me+a+Beer+for+Linq+to+Xml+–+gestione+news+(part+1)" target="paypal">Se i miei post ti sono stati di aiuto o ti sono sembrati intressanti puoi offrirmi un caffè :)</a></p>]]></content:encoded>
			<wfw:commentRss>http://www.antferr.com/aspnet/linq-to-xml-gestione-news-part-1/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Sys.Application is not an object &#8211; Solution</title>
		<link>http://www.antferr.com/aspnet/sys-application-is-not-an-object-solution/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=sys-application-is-not-an-object-solution</link>
		<comments>http://www.antferr.com/aspnet/sys-application-is-not-an-object-solution/#comments</comments>
		<pubDate>Wed, 17 Feb 2010 11:57:05 +0000</pubDate>
		<dc:creator>antferr</dc:creator>
				<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[browser]]></category>

		<guid isPermaLink="false">http://www.antferr.com/?p=483</guid>
		<description><![CDATA[
			
				
			
		
Se il browser mostra l&#8217;errore Javascript  Sys.Application is not an object, come visualizzato nello screenshot, ci sono diverse possibili cause.

La web application ha un web.config non settato per processare AJAX, probabilmente è stata creata, con Framework 2.0, una soluziona  [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.antferr.com%2Faspnet%2Fsys-application-is-not-an-object-solution%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.antferr.com%2Faspnet%2Fsys-application-is-not-an-object-solution%2F&amp;source=antferr&amp;style=normal&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p>Se il browser mostra l&#8217;errore Javascript  <em>Sys.Application is not an object</em>, come visualizzato nello screenshot, ci sono diverse possibili cause.<br />
<img src="http://www.antferr.com/wp-content/uploads/2010/02/sysApplication.jpg" alt="" title="errore Sys.Application"class="aligncenter size-thumbnail wp-image-486" /><br />
La web application ha un web.config non settato per processare AJAX, probabilmente è stata creata, con Framework 2.0, una soluziona semplice ASP.NET all&#8217;interno della quale, poi, si sono inseriti dei controlli AJAX.<br />
Se così non fosse c&#8217;è una possibilità che non balza subito all&#8217;attenzione: la versione di JSCRIPT. Nella directory ROOT\WINDOWS\SYSTEM32 è presente la dll JSCRIPT.dll, provate a verificarne la versione, se la versione è la 5.1 o se semplicemente è inferiore alla 5.6 basterà aggiornarla a quest&#8217;ultima (o ad una versione superiore) per far sì che il browser processi correttamente JavaScript.<br />

<!-- Begin Google Adsense code -->
<script type="text/javascript"><!--
google_ad_client = "pub-6474961034063636";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text_image";
google_ad_channel = "";
//-->
</script>
<script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<p class="buymebeer"><form action="https://www.paypal.com/cgi-bin/webscr" target="paypal" method="post"><input type="hidden" name="cmd" value="_xclick" /><input type="hidden" name="business" value="antferr@gmail.com" /><input type="hidden" name="return" value="" /><input type="hidden" name="item_name" value="Buy Me a Beer for Sys.Application is not an object - Solution" /><input type="hidden" name="amount" value="" /><input type="image" src="http://www.antferr.com/wp-content/plugins/buy-me-beer/icon_cafe.gif" align="left" alt="Mi offri un caffè?" title="Mi offri un caffè?" hspace="3" /></form><a href="https://www.paypal.com/cgi-bin/webscr?cmd=_xclick&amp;business=antferr@gmail.com&amp;amount=&amp;return=&amp;item_name=Buy+Me+a+Beer+for+Sys.Application+is+not+an+object+-+Solution" target="paypal">Se i miei post ti sono stati di aiuto o ti sono sembrati intressanti puoi offrirmi un caffè :)</a></p>]]></content:encoded>
			<wfw:commentRss>http://www.antferr.com/aspnet/sys-application-is-not-an-object-solution/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Grafici .NET</title>
		<link>http://www.antferr.com/aspnet/grafici-net/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=grafici-net</link>
		<comments>http://www.antferr.com/aspnet/grafici-net/#comments</comments>
		<pubDate>Tue, 25 Nov 2008 09:19:58 +0000</pubDate>
		<dc:creator>antferr</dc:creator>
				<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[.NET]]></category>
		<category><![CDATA[dundas chart]]></category>
		<category><![CDATA[graph]]></category>
		<category><![CDATA[graph .net]]></category>
		<category><![CDATA[infragistics]]></category>
		<category><![CDATA[zedgraph]]></category>

		<guid isPermaLink="false">http://www.antferr.com/aspnet/grafici-net/</guid>
		<description><![CDATA[
			
				
			
		
Nell&#8217;ultimo anno di lavoro ho utilizzato in maniera molto approfondita tre componenti per generare  grafici su tecnologia ASP.NET: ZedGraph, Infragistics, DundasChart. La scelta di un componente per la creazione di grafici è spesso delicata. Una valutazione errata puo portare a  [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.antferr.com%2Faspnet%2Fgrafici-net%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.antferr.com%2Faspnet%2Fgrafici-net%2F&amp;source=antferr&amp;style=normal&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p>Nell&#8217;ultimo anno di lavoro ho utilizzato in maniera molto approfondita tre componenti per generare  grafici su tecnologia ASP.NET:<strong> ZedGraph</strong>, <strong>Infragistics</strong>, <strong>DundasChart</strong>. La scelta di un componente per la creazione di grafici è spesso delicata. Una valutazione errata puo portare a risultati che non soddisfano le esigenze.<br />
<a href="http://zedgraph.org" target="_blank"><img src="http://www.antferr.com/wp-content/uploads/2008/11/zedgraph.jpg" alt="ZedGraph" align="left" /></a><em>ZedGraph</em> ha come punto di forza l&#8217;essere gratis. Offre una gamma di grafici abbastanza ampia ma che non copre la totalità delle necessità di uno sviluppatore. I grafici a disposizione sono Bar Chart, Line Chart e Pie Chart. Mancano Gantt e Gauge ed  è possibile disegnare solo grafici 2D. Purtroppo ad oggi l&#8217;ultima release risale al 28 Novembre 2007, quindi da quasi un anno il progetto sembra essere fermo alla versione 5.1.4.<br />
Per chi non ha budeget da spendere e deve creare grafici semplici ed essenziali perdendo però più tempo per personalizzarli è sicuramente una buona scelta.<br />
<a href="http://www.infragistics.com/dotnet/netadvantage/aspnet.aspx#Overview" target="_blank"><img src="http://www.antferr.com/wp-content/uploads/2008/11/infra_chart.jpg" alt="Net Advantage" align="left" /></a><em>Infragistics</em> fornisce 35 controlli ASP.NET davvero utili e totalmente compatibili con ajax. Tra i tanti ci sono i grafici (UltraChart, UltraGauge) che offrono un alto livello di customizzazione. Infatti non è possibile acquistare esclusivamente solo i componenti grafici ma è necessario acquistare tutta la suite.  L&#8217;infragistics, parlando dei grafici sul suo sito, scrive testualmente:<br />

<!-- Begin Google Adsense code -->
<script type="text/javascript"><!--
google_ad_client = "pub-6474961034063636";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text_image";
google_ad_channel = "";
//-->
</script>
<script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<br />
&#8220;<em>Over 50 2D and 3D Chart Types.<br />
Design-time Convenience – Custom wizard for designing single-layer or multi-layer charts, with optimized default presets to ensure you will make the best presentation of the chart type you have chosen to display.<br />
Composite Charting – Build complex charts with Series Collections, Chart Area Collections and Chart Layers Collections.<br />
Advanced Graphics – Use Anti-Aliasing, Alpha-Blending, Solid 3D, 2D or our custom Paint Elements to design the highest quality visual appearance.<br />
Multiple Rendering – Choose from multiple image types for rendering as well as SVG and SWF</em>.&#8221; Non mi sembra poco!<br />
NetAdvantage for ASP.NET è un&#8217;ottima scelta sia per il costo che per la quantità e qualità dei controlli offerti.<br />

<!-- Begin Google Adsense code -->
<script type="text/javascript"><!--
google_ad_client = "pub-6474961034063636";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text_image";
google_ad_channel = "";
//-->
</script>
<script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<br />
<a href="http://www.dundas.com/" target="_blank"><img src="http://www.antferr.com/wp-content/uploads/2008/11/chartthumb.jpg" alt="Dundas Chart" align="left" /></a>Dundas Chart copre la totalità delle rappresentazioni grafiche con ottimi risultati da tutti i punti di vista. Davvero impressionante la funzionalità dello zoom (non presente negli altri), ottenuta trascinando il cursore del mouse lungo un&#8217;area del grafico. Pacchetti separati da quello &#8220;chart&#8221; sono Dundas Gauge e Dundas Map. Ottima scelta per chi ha soldi da spendere e pretende risultati ai massimi livelli.Tra i tre componenti grafici analizzati finora Dundas vince senza dubbio in termini di performance e di copiosità di grafici ma ha un costo piuttosto elevato, mentre Infragistic è un ottimo compromesso tra le performance e il prezzo in quanto ci fornisce oltre ai grafici tanti componenti aggiuntivi.</p>
<p><a href="http://fusion.google.com/ig/add?synd=open&amp;source=ggyp&amp;moduleurl=http://hosting.gmodules.com/ig/gadgets/file/109061796195425379430/RSS-antferr.xml" target="_blank"><br />
<img src="http://www.antferr.com/IGoogle/plus_google.gif" /><br />
</a></p>
<p class="buymebeer"><form action="https://www.paypal.com/cgi-bin/webscr" target="paypal" method="post"><input type="hidden" name="cmd" value="_xclick" /><input type="hidden" name="business" value="antferr@gmail.com" /><input type="hidden" name="return" value="" /><input type="hidden" name="item_name" value="Buy Me a Beer for Grafici .NET" /><input type="hidden" name="amount" value="" /><input type="image" src="http://www.antferr.com/wp-content/plugins/buy-me-beer/icon_cafe.gif" align="left" alt="Mi offri un caffè?" title="Mi offri un caffè?" hspace="3" /></form><a href="https://www.paypal.com/cgi-bin/webscr?cmd=_xclick&amp;business=antferr@gmail.com&amp;amount=&amp;return=&amp;item_name=Buy+Me+a+Beer+for+Grafici+.NET" target="paypal">Se i miei post ti sono stati di aiuto o ti sono sembrati intressanti puoi offrirmi un caffè :)</a></p>]]></content:encoded>
			<wfw:commentRss>http://www.antferr.com/aspnet/grafici-net/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Infragistics WebNumericEdit &#8211; come cambiare il Group Separator</title>
		<link>http://www.antferr.com/aspnet/infragistics-webnumericedit-come-cambiare-il-group-separator/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=infragistics-webnumericedit-come-cambiare-il-group-separator</link>
		<comments>http://www.antferr.com/aspnet/infragistics-webnumericedit-come-cambiare-il-group-separator/#comments</comments>
		<pubDate>Tue, 20 May 2008 14:25:45 +0000</pubDate>
		<dc:creator>antferr</dc:creator>
				<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[infragistics]]></category>

		<guid isPermaLink="false">http://www.antferr.com/aspnet/infragistics-webnumericedit-come-cambiare-il-group-separator/</guid>
		<description><![CDATA[
			
				
			
		

Il pacchetto di strumenti fornito da Infragistics è molto vasto e da tante possibilità in più allo sviluppatore, rendendogli al vita più facile. Uno di questi strumenti è il WebNumericEdit: una sorta di textbox abilitata al solo editing di numeri. Di default questo controllo  [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.antferr.com%2Faspnet%2Finfragistics-webnumericedit-come-cambiare-il-group-separator%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.antferr.com%2Faspnet%2Finfragistics-webnumericedit-come-cambiare-il-group-separator%2F&amp;source=antferr&amp;style=normal&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p><img src="http://www.antferr.com/wp-content/uploads/2008/05/infragistics.gif" align="left" class="toolTipImg" title="Infragistics:: WebNumericEdit"  /></p>
<p>Il pacchetto di strumenti fornito da Infragistics è molto vasto e da tante possibilità in più allo sviluppatore, rendendogli al vita più facile. Uno di questi strumenti è il <strong>WebNumericEdit</strong>: una sorta di textbox abilitata al solo editing di numeri. Di default questo controllo utilizza un comma per separare le gruppi di numeri. Ad esempio rappresenta 2008 come 2.008. In molti casi (ad esempio se i numeri rappresentano delle quantità) questa cosa puo risultare utile, in altri no. Il 2008 in questa occasione voleva rappresentare l&#8217;anno solare, quindi è ovvio che 2.008 non ha molto senso.<br />
E&#8217; possibile cambiare il separator con un altro carattere oppure eliminarlo sostituendono con una stringa vuota in questo modo:<br />
Come prima cosa bisogna aggiungere il riferimento a System.Globalization e poi inseireil codice sottostante dove <em>MyWebNumericEdit </em>è evidentemente il controllo in oggetto,</p>
<p>NumberFormatInfo numInfo = new NumberFormatInfo();<br />
numInfo.NumberGroupSeparator = &#8220;&#8221;;<br />
this.MyWebNumericEdit.NumberFormat = numInfo;</p>
<p>
<!-- Begin Google Adsense code -->
<script type="text/javascript"><!--
google_ad_client = "pub-6474961034063636";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text_image";
google_ad_channel = "";
//-->
</script>
<script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<p class="buymebeer"><form action="https://www.paypal.com/cgi-bin/webscr" target="paypal" method="post"><input type="hidden" name="cmd" value="_xclick" /><input type="hidden" name="business" value="antferr@gmail.com" /><input type="hidden" name="return" value="" /><input type="hidden" name="item_name" value="Buy Me a Beer for Infragistics WebNumericEdit - come cambiare il Group Separator" /><input type="hidden" name="amount" value="" /><input type="image" src="http://www.antferr.com/wp-content/plugins/buy-me-beer/icon_cafe.gif" align="left" alt="Mi offri un caffè?" title="Mi offri un caffè?" hspace="3" /></form><a href="https://www.paypal.com/cgi-bin/webscr?cmd=_xclick&amp;business=antferr@gmail.com&amp;amount=&amp;return=&amp;item_name=Buy+Me+a+Beer+for+Infragistics+WebNumericEdit+-+come+cambiare+il+Group+Separator" target="paypal">Se i miei post ti sono stati di aiuto o ti sono sembrati intressanti puoi offrirmi un caffè :)</a></p>]]></content:encoded>
			<wfw:commentRss>http://www.antferr.com/aspnet/infragistics-webnumericedit-come-cambiare-il-group-separator/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Maximum request length exceeded ASP.NET</title>
		<link>http://www.antferr.com/aspnet/maximum-request-length-exceeded-aspnet/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=maximum-request-length-exceeded-aspnet</link>
		<comments>http://www.antferr.com/aspnet/maximum-request-length-exceeded-aspnet/#comments</comments>
		<pubDate>Thu, 14 Feb 2008 10:44:09 +0000</pubDate>
		<dc:creator>antferr</dc:creator>
				<category><![CDATA[ASP.NET]]></category>

		<guid isPermaLink="false">http://www.antferr.com/aspnet/maximum-request-length-exceeded-aspnet/</guid>
		<description><![CDATA[
			
				
			
		
Questo errore non è molto comune, ma è parecchio fastidioso. Si genera nel momento in cui vengono mandate troppe informazioni al server web, ad esempio un upload di un file troppo grande. La soluzione più veloce consiste nell&#8217;aumentare la quota di spazio per la request inserendo  [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.antferr.com%2Faspnet%2Fmaximum-request-length-exceeded-aspnet%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.antferr.com%2Faspnet%2Fmaximum-request-length-exceeded-aspnet%2F&amp;source=antferr&amp;style=normal&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p>Questo errore non è molto comune, ma è parecchio fastidioso. Si genera nel momento in cui vengono mandate troppe informazioni al server web, ad esempio un upload di un file troppo grande. La soluzione più veloce consiste nell&#8217;aumentare la quota di spazio per la request inserendo una variabile nel web.config:</p>
<pre><code><font><font face="Verdana, Arial, Helvetica" size="-1">&lt;configuration&gt;

  &lt;system.web&gt;

 &lt;httpRuntime maxRequestLength="</font></font></code>2097151<code>"/&gt;</code></pre>
<p>Il valore &#8220;2097151&#8243; ~= 2 Gb è il massimo per un appicazione di tipo ASP.NET 2.0<br />

<!-- Begin Google Adsense code -->
<script type="text/javascript"><!--
google_ad_client = "pub-6474961034063636";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text_image";
google_ad_channel = "";
//-->
</script>
<script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<p class="buymebeer"><form action="https://www.paypal.com/cgi-bin/webscr" target="paypal" method="post"><input type="hidden" name="cmd" value="_xclick" /><input type="hidden" name="business" value="antferr@gmail.com" /><input type="hidden" name="return" value="" /><input type="hidden" name="item_name" value="Buy Me a Beer for Maximum request length exceeded ASP.NET" /><input type="hidden" name="amount" value="" /><input type="image" src="http://www.antferr.com/wp-content/plugins/buy-me-beer/icon_cafe.gif" align="left" alt="Mi offri un caffè?" title="Mi offri un caffè?" hspace="3" /></form><a href="https://www.paypal.com/cgi-bin/webscr?cmd=_xclick&amp;business=antferr@gmail.com&amp;amount=&amp;return=&amp;item_name=Buy+Me+a+Beer+for+Maximum+request+length+exceeded+ASP.NET" target="paypal">Se i miei post ti sono stati di aiuto o ti sono sembrati intressanti puoi offrirmi un caffè :)</a></p>]]></content:encoded>
			<wfw:commentRss>http://www.antferr.com/aspnet/maximum-request-length-exceeded-aspnet/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WatiN ASP.NET Interop.SHDocVw.dll</title>
		<link>http://www.antferr.com/aspnet/watin-aspnet-interopshdocvwdll/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=watin-aspnet-interopshdocvwdll</link>
		<comments>http://www.antferr.com/aspnet/watin-aspnet-interopshdocvwdll/#comments</comments>
		<pubDate>Sat, 19 Jan 2008 11:26:25 +0000</pubDate>
		<dc:creator>antferr</dc:creator>
				<category><![CDATA[ASP.NET]]></category>

		<guid isPermaLink="false">http://www.antferr.com/aspnet/watin-aspnet-interopshdocvwdll/</guid>
		<description><![CDATA[
			
				
			
		
Ieri stavo facendo dei tests di navigazione alla web application che sto sviluppando. I tests sfruttano la tecnologia WatiN. I test fallivano puntualmente segnalandomi l&#8217;assenza dell&#8217;assembly Interop.SHDocVw.ddl senza del quale il test non aveva la possibilità di istanziare  [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.antferr.com%2Faspnet%2Fwatin-aspnet-interopshdocvwdll%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.antferr.com%2Faspnet%2Fwatin-aspnet-interopshdocvwdll%2F&amp;source=antferr&amp;style=normal&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p>Ieri stavo facendo dei tests di navigazione alla web application che sto sviluppando. I tests sfruttano la tecnologia <a href="http://watin.sourceforge.net/" target="_blank">WatiN.</a> I test fallivano puntualmente segnalandomi l&#8217;assenza dell&#8217;assembly Interop.SHDocVw.ddl senza del quale il test non aveva la possibilità di istanziare Internet Explorer. Il problema è velocemente risolvibile copiando l&#8217;asssembly di WatiN da C:\Programmi\WatiN\1.1.0-net-2.0\bin nella directory degli assembly del progetto di test.<br />

<!-- Begin Google Adsense code -->
<script type="text/javascript"><!--
google_ad_client = "pub-6474961034063636";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text_image";
google_ad_channel = "";
//-->
</script>
<script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<p class="buymebeer"><form action="https://www.paypal.com/cgi-bin/webscr" target="paypal" method="post"><input type="hidden" name="cmd" value="_xclick" /><input type="hidden" name="business" value="antferr@gmail.com" /><input type="hidden" name="return" value="" /><input type="hidden" name="item_name" value="Buy Me a Beer for WatiN ASP.NET Interop.SHDocVw.dll" /><input type="hidden" name="amount" value="" /><input type="image" src="http://www.antferr.com/wp-content/plugins/buy-me-beer/icon_cafe.gif" align="left" alt="Mi offri un caffè?" title="Mi offri un caffè?" hspace="3" /></form><a href="https://www.paypal.com/cgi-bin/webscr?cmd=_xclick&amp;business=antferr@gmail.com&amp;amount=&amp;return=&amp;item_name=Buy+Me+a+Beer+for+WatiN+ASP.NET+Interop.SHDocVw.dll" target="paypal">Se i miei post ti sono stati di aiuto o ti sono sembrati intressanti puoi offrirmi un caffè :)</a></p>]]></content:encoded>
			<wfw:commentRss>http://www.antferr.com/aspnet/watin-aspnet-interopshdocvwdll/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Focus controlli con RadioList</title>
		<link>http://www.antferr.com/aspnet/focus-controlli-con-radiolist/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=focus-controlli-con-radiolist</link>
		<comments>http://www.antferr.com/aspnet/focus-controlli-con-radiolist/#comments</comments>
		<pubDate>Mon, 11 Jun 2007 09:56:36 +0000</pubDate>
		<dc:creator>antferr</dc:creator>
				<category><![CDATA[ASP.NET]]></category>

		<guid isPermaLink="false">http://www.antferr.com/?p=16</guid>
		<description><![CDATA[
			
				
			
		
Gestendo alcuni controlli in ASP.NET mi è sorta la necessità di spostare il focus su determinati controlli in base alle scelte dell&#8217;utente nella pagina. Un semplice esempio puo essere quello di spostare il focus su un controllo in base alla scelta di un determinato radio button. Ho  [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.antferr.com%2Faspnet%2Ffocus-controlli-con-radiolist%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.antferr.com%2Faspnet%2Ffocus-controlli-con-radiolist%2F&amp;source=antferr&amp;style=normal&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p>Gestendo alcuni controlli in ASP.NET mi è sorta la necessità di spostare il focus su determinati controlli in base alle scelte dell&#8217;utente nella pagina. Un semplice esempio puo essere quello di spostare il focus su un controllo in base alla scelta di un determinato radio button. Ho creato una semplice pagina in cui è presente una RadioList con due Items e due textbox con due label annessi.<br />

<!-- Begin Google Adsense code -->
<script type="text/javascript"><!--
google_ad_client = "pub-6474961034063636";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text_image";
google_ad_channel = "";
//-->
</script>
<script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<br />
La Radiolist ha due scelte: <em>Cane/Gatto</em> e <em>Nessuno</em>. L&#8217;utente può indicare se ha un animale o se non lo ha. Se viene scelto <em>Cane/Gatto</em> il focus si sposta sulla textbox dove si indica la razza dell&#8217;animale, altrimenti se si va su <em>Nessuno</em> di passa ad un altro ipotetico controllo (la nostra seconda textbox). Come mostrato nella figura sotto.</p>
<p style="text-align: center"><img src="http://www.antferr.com/wp-content/uploads/2007/06/focus.jpg" alt="focus.jpg" /></p>
<p align="left">Per rendere più simpatico il tutto ho pensato di cambiare il colore, nel caso della seconda scelta, il colore della textbox per la razza dell&#8217;animale in grigio e poi di disabilitare la stessa textbox. Per fare ciò bastano queste poche righe di codice:</p>
<p align="left">&nbsp;</p>
<p><code><span style="color: #0000ff">protected void</span> RadioButtonList1_SelectedIndexChanged(object sender, EventArgs e)<br />
{<br />
<span style="color: #0000ff">if</span> (RadioButtonList1.SelectedValue == "Cane/Gatto")<br />
{<br />
TextBox2.Focus();<br />
TextBox1.BackColor = System.Drawing.Color.Gray;<br />
TextBox1.Enabled = false;<br />
}<br />
<span style="color: #0000ff">else</span><br />
TextBox1.BackColor = System.Drawing.Color.White;<br />
TextBox1.Enabled = true;<br />
TextBox1.Focus();<br />
}<br />
</code><br />
Nel corpo dell&#8217; else riporto il colore della prima texbox a white e la riabilito. ciò non è necessario se il visitatore sceglie per la prima volta <em>Cane/Gatto</em> nella radiolist1, ma nel caso in cui dopo aver scelto <em>nessuno</em> cambi idea e reimposti la sua scelta a <em>Cane/Gatto</em>.<br />
Carino vero?</p>
<p class="buymebeer"><form action="https://www.paypal.com/cgi-bin/webscr" target="paypal" method="post"><input type="hidden" name="cmd" value="_xclick" /><input type="hidden" name="business" value="antferr@gmail.com" /><input type="hidden" name="return" value="" /><input type="hidden" name="item_name" value="Buy Me a Beer for Focus controlli con RadioList" /><input type="hidden" name="amount" value="" /><input type="image" src="http://www.antferr.com/wp-content/plugins/buy-me-beer/icon_cafe.gif" align="left" alt="Mi offri un caffè?" title="Mi offri un caffè?" hspace="3" /></form><a href="https://www.paypal.com/cgi-bin/webscr?cmd=_xclick&amp;business=antferr@gmail.com&amp;amount=&amp;return=&amp;item_name=Buy+Me+a+Beer+for+Focus+controlli+con+RadioList" target="paypal">Se i miei post ti sono stati di aiuto o ti sono sembrati intressanti puoi offrirmi un caffè :)</a></p>]]></content:encoded>
			<wfw:commentRss>http://www.antferr.com/aspnet/focus-controlli-con-radiolist/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

