<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://geeks.ms/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>UX CODE FACTORY - Cristian Manteiga : .NET 3.0</title><link>http://geeks.ms/blogs/cristian/archive/tags/.NET+3.0/default.aspx</link><description>Etiquetas: .NET 3.0</description><dc:language>en</dc:language><generator>CommunityServer 2008.5 SP1 (Build: 31106.3070)</generator><item><title>WPF: How To: Mejorar el rendimiento en animaciones</title><link>http://geeks.ms/blogs/cristian/archive/2009/06/19/wpf-how-to-mejorar-el-rendimiento-en-animaciones.aspx</link><pubDate>Fri, 19 Jun 2009 11:57:00 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:150826</guid><dc:creator>Cristian Manteiga</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://geeks.ms/blogs/cristian/rsscomments.aspx?PostID=150826</wfw:commentRss><comments>http://geeks.ms/blogs/cristian/archive/2009/06/19/wpf-how-to-mejorar-el-rendimiento-en-animaciones.aspx#comments</comments><description>&lt;p&gt;Uno de los aspectos menos conocidos de las animaciones en Windows Presentation Foundation es la capacidad de control que tenemos sobre su comportamiento en tiempo de dibujado.&lt;/p&gt;
&lt;p&gt;WPF nos provee entre otras muchas cosas de la capacidad de modificar el Frame Rate (n&amp;ordm; de fotogramas por segundo) utilizados para animar un elemento por el motor de composici&amp;oacute;n de WPF.&lt;/p&gt;
&lt;p&gt;Para controlar este aspecto de las animaciones solo debemos hacer lo siguiente:&lt;/p&gt;
&lt;p&gt;public partial class MainWindow : Window&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public MainWindow()&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; InitializeComponent();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Timeline.DesiredFrameRateProperty.OverrideMetadata(&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; typeof(Timeline),&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; new FrameworkPropertyMetadata { DefaultValue = 10 });&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;
&lt;p&gt;Esto modifica dicha propiedad de dependencia &amp;quot;DesiredFrameRateProperty&amp;quot; para todas las animaciones ccontenidas dentro de esta ventana.&lt;/p&gt;
&lt;p&gt;Un dato interesante tambi&amp;eacute;n es que el valor por defecto de esta propiedad es de 50 fotogramas por segundo.&lt;/p&gt;
&lt;p&gt;Advertir que al modificar dicho valor incrementamos o reducimos el consumo de CPU para la gesti&amp;oacute;n de las animaciones, por lo que debe ser usada con mucha precauci&amp;oacute;n ya que su uso incorrecto puede derivar en un consumo elevado o en efectos gr&amp;aacute;ficos no deseados.&lt;/p&gt;
&lt;p&gt;Espero que os resulte de utilidad.&lt;/p&gt;
&lt;p&gt;Saludos&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=150826" width="1" height="1"&gt;</description><category domain="http://geeks.ms/blogs/cristian/archive/tags/WPF/default.aspx">WPF</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/.NET+3.0/default.aspx">.NET 3.0</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/WPF+Surface/default.aspx">WPF Surface</category></item><item><title>WPF: Desarrolla con MSDN - Cifras y letras y David Carmona</title><link>http://geeks.ms/blogs/cristian/archive/2008/05/21/wpf-desarrolla-con-msdn-cifras-y-letras-y-david-carmona.aspx</link><pubDate>Wed, 21 May 2008 18:03:38 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:86388</guid><dc:creator>Cristian Manteiga</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://geeks.ms/blogs/cristian/rsscomments.aspx?PostID=86388</wfw:commentRss><comments>http://geeks.ms/blogs/cristian/archive/2008/05/21/wpf-desarrolla-con-msdn-cifras-y-letras-y-david-carmona.aspx#comments</comments><description>&lt;p&gt;El grán tiburón David Carmona ha publicado en su blog un juego desarrollado en WPF y desplegado por CilckOnce basado en el juego &amp;quot;Cifras y Letras&amp;quot;.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;img src="http://www.desarrollaconmsdn.com/cifrasyletras/images/Pantalla1-Preview.png" alt="" /&gt;&lt;/p&gt; &lt;p&gt;En este juego tuvimos el honor de colaborar en la parte de desarrollo de la interfaz gráfica y su diseño y la verdad es que verlo ahora en producción es toda una alegría.&lt;/p&gt; &lt;p&gt;Enhorabuena a Lucía y Raúl por las tareas del prototipado, diseño preliminar y de integración con Expression Blend, estáis hechos unos fieras!!!&lt;/p&gt; &lt;p&gt;Podeís ver el post de David Carmona en &lt;a href="http://geeks.ms/blogs/dcarmona/archive/2008/05/20/cifras-y-letras.aspx" target="_blank"&gt;su blog&lt;/a&gt; y jugar desde &lt;a href="http://www.desarrollaconmsdn.com/cifrasyletras/launcher.aspx" target="_blank"&gt;aquí&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;img src="http://www.desarrollaconmsdn.com/cifrasyletras/images/Pantalla2-Preview.png" alt="" /&gt;&lt;/p&gt; &lt;p&gt;Espero que disfrutéis jugando.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=86388" width="1" height="1"&gt;</description><category domain="http://geeks.ms/blogs/cristian/archive/tags/WPF/default.aspx">WPF</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/.NET+3.0/default.aspx">.NET 3.0</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/Expression+Blend/default.aspx">Expression Blend</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/Blend/default.aspx">Blend</category></item><item><title>WPF: España gana en The Ingenuity Point Contest</title><link>http://geeks.ms/blogs/cristian/archive/2008/05/20/wpf-espa-241-a-gana-en-the-ingenuity-point-contest.aspx</link><pubDate>Tue, 20 May 2008 11:13:03 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:86243</guid><dc:creator>Cristian Manteiga</dc:creator><slash:comments>11</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://geeks.ms/blogs/cristian/rsscomments.aspx?PostID=86243</wfw:commentRss><comments>http://geeks.ms/blogs/cristian/archive/2008/05/20/wpf-espa-241-a-gana-en-the-ingenuity-point-contest.aspx#comments</comments><description>&lt;p&gt;Una gran noticia para el desarrollo software en España, ya que una aplicación española gana el primer puesto en la vertical de Sanidad en el concurso de innovación &amp;quot;&lt;a href="http://www.theingenuitypoint.com/main/default.aspx" target="_blank"&gt;The Ingenuity Point&lt;/a&gt;&amp;quot;.&lt;/p&gt; &lt;p&gt;La aplicación ganadora es &lt;strong&gt;Lebab Interpreter to Integration,&lt;/strong&gt; de &lt;a href="http://lebab.es/" target="_blank"&gt;Lebab Systems&lt;/a&gt; y desarrollada por Plain Concepts.&lt;/p&gt; &lt;p&gt;La aplicación es una solución completa que satisface las necesidades de los profesionales de diversas áreas de la sanidad, que permite la utilización de una base de datos de preguntas y respuestas relacionadas de diagnósticos y explicaciones, un sistema rápido y concreto que facilita la comunicación entre el personal sanitario y el inmigrante/extranjero.&lt;/p&gt; &lt;p&gt;Podemos ver una demo &lt;a href="http://lebab.es/demo.html" target="_blank"&gt;aquí.&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;img src="http://lebab.es/imagenes/verdemo2.jpg" alt="" /&gt; &lt;/p&gt; &lt;p&gt;No podría dejar pasar esta ocasión sin hacer mención a mi gran maestro, compañero y&amp;nbsp; amigo &lt;a href="http://geeks.ms/blogs/ohernandez/" target="_blank"&gt;Octavio Hernández&lt;/a&gt;, con el cual he compartido el proceso de diseño y desarrollo de esta aplicación desde sus inicios y del cual he aprendido día a día, sin dejar de agradecer a los grandes profesionales&amp;nbsp; y amigos de Plain Concepts su colaboración en este proyecto y sin los cuales esto no habría sido posible.&lt;/p&gt; &lt;p&gt;Además agradecer también al personal de Lebab System la confianza depositada en nuestra empresa para llevar a cabo este gran proyecto de innovación.&lt;/p&gt; &lt;p&gt;&lt;a href="http://geeks.ms/blogs/cristian/WindowsLiveWriter/WPFEspaaganaenTheIngenuityPointContest_114C/IMG_0108_2.jpg"&gt;&lt;img style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" height="184" alt="IMG_0108" src="http://geeks.ms/blogs/cristian/WindowsLiveWriter/WPFEspaaganaenTheIngenuityPointContest_114C/IMG_0108_thumb.jpg" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Un saludo y mi más sincera enhorabuena a los premiados!!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=86243" width="1" height="1"&gt;</description><category domain="http://geeks.ms/blogs/cristian/archive/tags/WPF/default.aspx">WPF</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/.NET+3.0/default.aspx">.NET 3.0</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/Expression+Blend/default.aspx">Expression Blend</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/Blend/default.aspx">Blend</category></item><item><title>WPF: La Ley presenta el primer Reader basado en la SDK de Microsoft</title><link>http://geeks.ms/blogs/cristian/archive/2008/02/15/wpf-la-ley-presenta-el-primer-reader-basado-en-la-sdk-de-microsoft.aspx</link><pubDate>Fri, 15 Feb 2008 11:28:00 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:71713</guid><dc:creator>Cristian Manteiga</dc:creator><slash:comments>8</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://geeks.ms/blogs/cristian/rsscomments.aspx?PostID=71713</wfw:commentRss><comments>http://geeks.ms/blogs/cristian/archive/2008/02/15/wpf-la-ley-presenta-el-primer-reader-basado-en-la-sdk-de-microsoft.aspx#comments</comments><description>&lt;p&gt;Durante al jornada de anteayer tuvo lugar la presentación a los medios especializados del &amp;quot;Diario La Ley Reader&amp;quot;, diario digital basado en la tecnología Microsoft News Reader SDK.&lt;/p&gt;
&lt;p&gt;Este diario digital ha sido presentado, entre otros, por Enrique Fernández-Laguilhoat, Director de Plataformas de Microsoft Ibérica y La directora del &lt;a href="http://diariolaley.laley.es/Content/Inicio.aspx" target="_blank"&gt;Diario LA LEY&lt;/a&gt;, Mercedes Rey.&lt;/p&gt;
&lt;p&gt;Está disponible desde ayer de manera gratuita para sus más de 20.000 subscriptores durante un periodo de 30 días. Una vez acabado el plazo y siguiendo el modelo de New York Times, Diario La Ley Reader se convertirá en un diario electrónico únicamente para subscriptores.&lt;/p&gt;
&lt;p&gt;La fase de desarrollo supuso un gran reto para ambas partes, por un lado para La Ley, que debía buscar un modo de ubicar textos jurídicos de forma que la presentación de los mismos se mostrase con la mayor de las calidades a sus lectores y por el otro lado la de acomodar el SDk a la presentación de este tipo de contenido.&lt;/p&gt;
&lt;p&gt;Además este software se encuentra en proceso de certificación para Windows Vista, aunque también se ejecute en Windows XP.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geeks.ms/blogs/cristian/WindowsLiveWriter/WPFLaLeypresentaelprimerReaderbasadoenla_E4EB/image_2.png"&gt;&lt;img style="BORDER-TOP-WIDTH:0px;BORDER-LEFT-WIDTH:0px;BORDER-BOTTOM-WIDTH:0px;BORDER-RIGHT-WIDTH:0px;" height="306" alt="image" src="http://geeks.ms/blogs/cristian/WindowsLiveWriter/WPFLaLeypresentaelprimerReaderbasadoenla_E4EB/image_thumb.png" width="518" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;La aplicación se puede descargar desde &lt;a class="" title="aquí" href="http://diariolaley.laley.es/Content/Reader.aspx" target="_blank"&gt;aquí.&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=71713" width="1" height="1"&gt;</description><category domain="http://geeks.ms/blogs/cristian/archive/tags/WPF/default.aspx">WPF</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/.NET+3.0/default.aspx">.NET 3.0</category></item><item><title>OFF-TOPIC: Empezar el año como MVP</title><link>http://geeks.ms/blogs/cristian/archive/2008/01/08/off-topic-empezar-el-a-241-o-como-mvp.aspx</link><pubDate>Tue, 08 Jan 2008 07:29:22 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:61927</guid><dc:creator>Cristian Manteiga</dc:creator><slash:comments>20</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://geeks.ms/blogs/cristian/rsscomments.aspx?PostID=61927</wfw:commentRss><comments>http://geeks.ms/blogs/cristian/archive/2008/01/08/off-topic-empezar-el-a-241-o-como-mvp.aspx#comments</comments><description>&lt;p&gt;La verdad es que después de unas navidades febriles (de las que no me encuentro del todo recuperado) es muy agradable encontrarse en la bandeja de entrada del correo un mail que te felicita por haber sido nombrado Microsoft Most Valuable Professional.&lt;img src="http://geeks.ms/photos/images/images/183/secondarythumb.aspx" align="right" alt="" /&gt;&lt;/p&gt; &lt;p&gt;Es ciertamente uno de los mejores regalos que se puede recibir estas navidades. Ya que no tenemos salud, por lo menos tenemos MVP :)&lt;/p&gt; &lt;p&gt;Es todo un orgullo para mi haber sido reconocido en la categoría de Visual Developer - Windows Client Developement, y desde aquí quiero agradecer a todos los que han hecho que esto sea posible, gracias a mis compañeros y amigos (incluso a los que están lejos ahora) , que me apoyan continuamente y de los que no paro de aprender, a la gente de Microsoft con la que he crecido y que han creído en mi y por supuesto a Cristina, artífice de esta mención y a todos los que han compartido aunque solo sea un ratito conmigo, porque de todos vosotros he aprendido algo... y espero seguir haciéndolo.&lt;/p&gt; &lt;p&gt;Agradecer por supuesto a esta nuestra comunidad ;) la ilusión por la tecnología de la que hace gala y de la que espero seguir participando durante mucho tiempo, aportando mi granito de arena y enriqueciendome de vuestra sabiduría.&lt;/p&gt; &lt;p&gt;De nuevo muchas gracias... &lt;/p&gt; &lt;p&gt;Un saludo a todos y Feliz Año!!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=61927" width="1" height="1"&gt;</description><category domain="http://geeks.ms/blogs/cristian/archive/tags/Personal/default.aspx">Personal</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/WPF/default.aspx">WPF</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/.NET+3.0/default.aspx">.NET 3.0</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/Expression+Blend/default.aspx">Expression Blend</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/Blend/default.aspx">Blend</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/Off-Topic/default.aspx">Off-Topic</category></item><item><title>WPF: Habilitar la depuración de XAML</title><link>http://geeks.ms/blogs/cristian/archive/2007/07/25/wpf-habilitar-la-depuraci-243-n-de-xaml.aspx</link><pubDate>Wed, 25 Jul 2007 20:29:55 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:23149</guid><dc:creator>Cristian Manteiga</dc:creator><slash:comments>9</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://geeks.ms/blogs/cristian/rsscomments.aspx?PostID=23149</wfw:commentRss><comments>http://geeks.ms/blogs/cristian/archive/2007/07/25/wpf-habilitar-la-depuraci-243-n-de-xaml.aspx#comments</comments><description>&lt;p&gt;Uno de los problemas más habituales a la hora de depurar una aplicación WPF, es el de cometer errores dentro del XAML que define nuestra interfaz. Por defecto las excepciones&amp;nbsp;nos muestran un mensaje que de poco ayuda:&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Error in markup file &amp;#39;Namespace;component/WMain.xaml&amp;#39; Line 1 Position 9.&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;Si nos paramos a pensar unos segundos&amp;nbsp;en la estructura de las ventanas en XAML, rápidamente nos daremos cuenta que en la primera línea, en la posición 9, está parte de la definición de nuestra ventana, y rara vez es la causante del problema.&lt;/p&gt; &lt;p&gt;Por defecto, Visual Studio no muestra los detalles de las excepciones que son provocadas por un error en el XAML, pero esto lo podemos cambiar siguiendo estos sencillos pasos:&lt;/p&gt; &lt;ol&gt; &lt;li&gt;Pulsamos sobre el menú Debug (Depuración)&lt;/li&gt; &lt;li&gt;Seleccionamos Exceptions... (Excepciones) Ctrl+Alt+G&lt;/li&gt; &lt;li&gt;En la ventana que se nos muestra pulsamos el botón Add... (Añadir)&lt;/li&gt; &lt;li&gt;Seleccionamos en el campo Type: &lt;strong&gt;Common Language Runtime Exceptions&lt;/strong&gt;&lt;/li&gt; &lt;li&gt;Escribimos en el campo Name: &lt;strong&gt;System.Windows.Markup.XamlParseException&lt;/strong&gt;&lt;/li&gt; &lt;li&gt;Desplegamos el árbol de Common Language Runtime Exceptions y marcamos la casilla de &lt;strong&gt;Thrown&lt;/strong&gt;&lt;/li&gt;&lt;/ol&gt; &lt;p&gt;&lt;a href="http://geeks.ms/blogs/cristian/WindowsLiveWriter/WPFHabilitarladepuracindeXAML_13C67/excepciones.png"&gt;&lt;img style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" height="154" alt="excepciones" src="http://geeks.ms/blogs/cristian/WindowsLiveWriter/WPFHabilitarladepuracindeXAML_13C67/excepciones_thumb.png" width="551" border="0" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Acto seguido volveremos a depurar la aplicación, lo que, una vez se dispare la excepción, nos mostrará un mensaje como el que sigue:&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Cannot convert the value in attribute &amp;#39;Background&amp;#39; to object of type &amp;#39;System.Windows.Media.Brush&amp;#39;&lt;/strong&gt;. Token is not valid.&amp;nbsp; Error at object &amp;#39;System.Windows.Controls.Grid&amp;#39; in markup file &amp;#39;Namespace;component/WMain.xaml&amp;#39; &lt;strong&gt;Line 10 Position 6&lt;/strong&gt;.&lt;/p&gt; &lt;p&gt;El grupo de producto está trabajando en la mejora de este aspecto en la versión 2008 de Visual Studio (Antes conocida&amp;nbsp;como Orcas).&lt;/p&gt; &lt;p&gt;Espero que este pequeño truco os resulte de utilidad y os&amp;nbsp; ayude a solucionar algún que otro problema.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=23149" width="1" height="1"&gt;</description><category domain="http://geeks.ms/blogs/cristian/archive/tags/Visual+Studio+2005/default.aspx">Visual Studio 2005</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/WPF/default.aspx">WPF</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/.NET+3.0/default.aspx">.NET 3.0</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/Expression+Blend/default.aspx">Expression Blend</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/Blend/default.aspx">Blend</category></item><item><title>WPF: Rendimiento vs BitmapEffects</title><link>http://geeks.ms/blogs/cristian/archive/2007/06/18/wpf-rendimiento-vs-bitmapeffects.aspx</link><pubDate>Mon, 18 Jun 2007 14:07:00 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:16217</guid><dc:creator>Cristian Manteiga</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://geeks.ms/blogs/cristian/rsscomments.aspx?PostID=16217</wfw:commentRss><comments>http://geeks.ms/blogs/cristian/archive/2007/06/18/wpf-rendimiento-vs-bitmapeffects.aspx#comments</comments><description>&lt;P&gt;Si llevais algún tiempo experimentando con Windows Presentation Foundation, habréis descubierto los BitmapEffects, que no son más que efectos prediseñados que podemos aplicar a los elementos de nuestra interfaz para mejorar el aspecto visual de nuestras aplicaciones.&lt;/P&gt;
&lt;P&gt;Pero no todo son buenas noticias, como todo en el desarrollo software, los BitmapEffects tienen una implicación en el uso abusibo dentro de la interfaz, y esta implicación es de rendimiento.&lt;/P&gt;
&lt;P&gt;Los BitmapEffects producen un decrecimento en el rendimiento general de nuestra aplicación cuando no se controla su uso, ya que estos fuerzan el renderizado software de los controles que hacen uso de ellos y de todos los elemntos que estén contenidos en su jerarquía de objetos.&lt;/P&gt;
&lt;P&gt;El procesado de pixeles para los BitmapEffects ha sido llevado a cabo en código no gestionado y para unirlo al resto de características de .NET 3.0 se hace uso de un pequeño Wrapper. Podéis ver algo más de este tema en &lt;A href="http://msdn2.microsoft.com/en-us/library//ms771475.aspx" target=_blank&gt;este enlace&lt;/A&gt;&amp;nbsp;así com descubrir cómo realizar nuestros propios BitmapEffects.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://geeks.ms/blogs/cristian/WindowsLiveWriter/WPFRendimientovsBitmapEffects_65E/sshot-4.png"&gt;&lt;IMG height=356 alt=sshot-4 src="http://geeks.ms/blogs/cristian/WindowsLiveWriter/WPFRendimientovsBitmapEffects_65E/sshot-4_thumb.png" width=450 border=0&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;Otra de las implicaciones a tener en cuenta en los BitmapEffects es que no pueden usarse en una aplicación que se ejecute sobre confiabilidad parcial (Partial Trust), por lo que no podremos hacer uso de ellos en nuestras aplicaciones XBAP.&lt;/P&gt;
&lt;P&gt;El equipo de producto está buscando introducir cambios en la siguiente versión de WPF para que se pueda hacer uso de BitmapEffects y de la aceleración Hardware desde una aplicación ejecutada en confiabilidad parcial. Estas dos opciones han sido de las más demandadas por la comunidad.&lt;/P&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=16217" width="1" height="1"&gt;</description><category domain="http://geeks.ms/blogs/cristian/archive/tags/Vista/default.aspx">Vista</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/WPF/default.aspx">WPF</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/.NET+3.0/default.aspx">.NET 3.0</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/Expression+Blend/default.aspx">Expression Blend</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/Blend/default.aspx">Blend</category></item><item><title>WPF: Windows Client VS XBAP</title><link>http://geeks.ms/blogs/cristian/archive/2007/06/14/wpf-windows-client-vs-xbap.aspx</link><pubDate>Thu, 14 Jun 2007 14:56:35 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:15934</guid><dc:creator>Cristian Manteiga</dc:creator><slash:comments>7</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://geeks.ms/blogs/cristian/rsscomments.aspx?PostID=15934</wfw:commentRss><comments>http://geeks.ms/blogs/cristian/archive/2007/06/14/wpf-windows-client-vs-xbap.aspx#comments</comments><description>&lt;p&gt;Cuando desarrollemos aplicaciones con WPF deberemos tener en cuenta cual será el despliegue que usará, por lo que deberemos decidir entre un despliegue Web mediante XBAP o crear una aplicación de escritorio, y por lo tanto tener en cuenta cuales son los requisitos que debe cumplir, ya que aunque casi toda la funcionalidad de WPF está presente en las aplicaciones XBAP, no toda ella está descrita.&lt;/p&gt; &lt;p&gt;Estas implicaciones deben tenerse en cuenta en la fase de definición de la aplicación, en la que deberemos decidir dicho despliegue y aquellos elementos de los&amp;nbsp;que podremos hacer uso.&lt;/p&gt; &lt;p&gt;Para poder tener una noción clara de cuales son estas diferencias, aquí os dejo una comparativa entre aplicaciones de escritorio y aplicaciones XBAP:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;strong&gt;Aplicaciones de escritorio&lt;/strong&gt;  &lt;ul&gt; &lt;li&gt;Se instala en la máquina local  &lt;li&gt;Aparece en el menú Inicio y en Añadir/Quitar programas  &lt;li&gt;Se instala con un MSI o con ClickOnce  &lt;li&gt;Code Access Security  &lt;ul&gt; &lt;li&gt;Se ejecuta en confiabilidad total (Full Trust)  &lt;li&gt;Capacidades inherentes:  &lt;ul&gt; &lt;li&gt;Puede mostrar ventanas hijas  &lt;li&gt;Uso de WCF  &lt;li&gt;Acceso al registro  &lt;li&gt;Acceso a Escitura y lectura en el sistema de ficheros  &lt;li&gt;Otras tareas heredadas de Full Trust...&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Se ejecuta en una ventana independiente  &lt;li&gt;Versiones actualizadas de la aplicación a elección del ususario  &lt;ul&gt; &lt;li&gt;Automatizado por ClickOnce  &lt;li&gt;A elecciónd el usuario&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Uso desconectado de la Aplicación&lt;br&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt; &lt;li&gt;&lt;strong&gt;Aplicaciones XBAP&lt;/strong&gt; &lt;/li&gt; &lt;ul&gt; &lt;li&gt;No se instala en la máquina local  &lt;li&gt;No aparece en el menú Inicio y en Añadir/Quitar programas  &lt;li&gt;Se despliega automáticamente con ClickOnce  &lt;ul&gt; &lt;li&gt;xxxx.xbap es en realidad un manifiesto de ClickOnce&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Code Access Security  &lt;ul&gt; &lt;li&gt;Se ejecuta en la Zona Internet  &lt;li&gt;Excepciones de seguridad en accesos a recursos no autorizados  &lt;li&gt;Capacidades inherentes a la zona de seguridad  &lt;ul&gt; &lt;li&gt;Almacenamiento protegido  &lt;li&gt;No se puede llamar a servicios WCF&amp;nbsp;  &lt;li&gt;Solo se puede hacer uso de&amp;nbsp;tareas disponibles en la Zona Internet&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Seguridad adicional&amp;nbsp;  &lt;ul&gt; &lt;li&gt;WPF elimina los privilegios de los drivers de dispositivo en el proceso del explorador&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Alojado en el proceso del explorador de internet  &lt;li&gt;Solo disponible para Internet Explorer en entornos Windows  &lt;li&gt;Restricciones de WPF  &lt;ul&gt; &lt;li&gt;No se soporta el objeto Window, se hace uso de Page  &lt;li&gt;No se admiten ventanas modales  &lt;li&gt;No hay soporte para&amp;nbsp;BitmapEffects  &lt;li&gt;No hay soporte para aceleración gráfica por Hardware&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Siempre se ejecuta la última versión  &lt;li&gt;Escenario de uso conectado  &lt;li&gt;El usuario debe tener acceso al servidor de despliegue&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=15934" width="1" height="1"&gt;</description><category domain="http://geeks.ms/blogs/cristian/archive/tags/Vista/default.aspx">Vista</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/WPF/default.aspx">WPF</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/.NET+3.0/default.aspx">.NET 3.0</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/Expression+Blend/default.aspx">Expression Blend</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/Blend/default.aspx">Blend</category></item><item><title>WPF: Performance Tools Avaliable as Standalone MSI</title><link>http://geeks.ms/blogs/cristian/archive/2007/06/13/wpf-performance-tools-avaliable-as-standalone-msi.aspx</link><pubDate>Wed, 13 Jun 2007 15:57:22 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:15939</guid><dc:creator>Cristian Manteiga</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://geeks.ms/blogs/cristian/rsscomments.aspx?PostID=15939</wfw:commentRss><comments>http://geeks.ms/blogs/cristian/archive/2007/06/13/wpf-performance-tools-avaliable-as-standalone-msi.aspx#comments</comments><description>&lt;p&gt;Una gran noticia para todos es que las herramientas de medición y análisis de rendimiento de WPF están disponibles en un instalador independiente, por lo que ya no es necesario instalar el SDK completo para poder tener acceso a estas herramientas tan útiles y en mi opinión imprescindibles.&lt;/p&gt; &lt;p&gt;Además a esta gran noticia se une el hecho de que esta versión es una versión actualizada, correspondiente a la versión incluida en el SDK de .NET 3.5.&lt;/p&gt; &lt;p&gt;Podéis descargarlas desde estos enlaces:&lt;/p&gt; &lt;p&gt;&lt;a href="http://wpf.netfx3.com/files/folders/developer/entry10880.aspx" target="_blank"&gt;X86&lt;/a&gt;&lt;br&gt;&lt;a href="http://wpf.netfx3.com/files/folders/developer/entry10879.aspx" target="_blank"&gt;X64&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Happy Coding!!!&lt;/p&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=15939" width="1" height="1"&gt;</description><category domain="http://geeks.ms/blogs/cristian/archive/tags/.NET/default.aspx">.NET</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/Vista/default.aspx">Vista</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/WPF/default.aspx">WPF</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/.NET+3.0/default.aspx">.NET 3.0</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/Expression+Blend/default.aspx">Expression Blend</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/Blend/default.aspx">Blend</category></item><item><title>WPF: Acropolis, una primera aproximación a LoB con WPF</title><link>http://geeks.ms/blogs/cristian/archive/2007/06/07/wpf-acropolis-una-primera-aproximaci-243-n-a-lob-con-wpf.aspx</link><pubDate>Thu, 07 Jun 2007 13:23:00 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:15757</guid><dc:creator>Cristian Manteiga</dc:creator><slash:comments>5</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://geeks.ms/blogs/cristian/rsscomments.aspx?PostID=15757</wfw:commentRss><comments>http://geeks.ms/blogs/cristian/archive/2007/06/07/wpf-acropolis-una-primera-aproximaci-243-n-a-lob-con-wpf.aspx#comments</comments><description>&lt;P&gt;&lt;STRONG&gt;Microsoft code name “Acropolis” Community Technology Preview 1&lt;/STRONG&gt; es un conjunto de componentes y herramientas que persigue simplificar la construcción y la gestión de aplicaciones Cliente modulares&amp;nbsp;en .NET orientadas a línea de negocio. Acropolis&amp;nbsp;es parte de&amp;nbsp;la línea “.NET Client Futures”, una vista previa al futuro del desarrollo Windows client. 
&lt;P&gt;&lt;A href="http://geeks.ms/blogs/cristian/WindowsLiveWriter/WPFAcropolisunaprimeraaproximacinaLoBcon_D3E8/sshot-5.png"&gt;&lt;IMG style="BORDER-RIGHT:0px;BORDER-TOP:0px;BORDER-LEFT:0px;BORDER-BOTTOM:0px;" alt=sshot-5 src="http://geeks.ms/blogs/cristian/WindowsLiveWriter/WPFAcropolisunaprimeraaproximacinaLoBcon_D3E8/sshot-5_thumb.png" border=0&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Acropolis ha sido construido con las capacidades ricas de Microsoft Windows&amp;nbsp;y de&amp;nbsp;.NET Framework, incluyendo Windows Presentation Foundation (WPF), proporcionando herramientas y componentes prediseñados que ayudarán a los desarrolladores a ensamblar aplicaciones. Con Acropolis seremos capaces de:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Crear de forma sencilla experiencias de usuario con WPF&amp;nbsp;para nuestras aplicaciones. 
&lt;LI&gt;Construir aplicaciones cliente mediante modulos reusables y&amp;nbsp;conectables&amp;nbsp;que nos permitirán&amp;nbsp;de forma sencilla crear aplicaciones de línea de negocio en menos tiempo. 
&lt;LI&gt;Integrar y alojar&amp;nbsp;nuestros módulos en aplicaciones como&amp;nbsp;Microsoft Office, o construir interfaces cliente independientes. 
&lt;LI&gt;Cambiar el&amp;nbsp;"look and feel" de nuestra aplicación usando&amp;nbsp;Temas prediseñados, o diseños personalizados usando XAML. 
&lt;LI&gt;Añadir características como navegación basada en workflows y vistas especificas para el usuario con el mínimo coste de codificación. 
&lt;LI&gt;Gestionar, actualizar y distribuir nuestros modulos de la&amp;nbsp;aplicación de forma facil y sencilla.&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;A href="http://geeks.ms/blogs/cristian/WindowsLiveWriter/WPFAcropolisunaprimeraaproximacinaLoBcon_D3E8/sshot-5.png"&gt;&lt;/A&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Os dejo también &lt;A href="http://download.microsoft.com/download/9/8/4/984da9b4-b5ff-45ba-b673-03117c393238/Acropolis%20-%20Getting%20Started.wmv" target=_blank&gt;un video&lt;/A&gt; donde se presenta Acropolis. &lt;/P&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=15757" width="1" height="1"&gt;</description><category domain="http://geeks.ms/blogs/cristian/archive/tags/WPF/default.aspx">WPF</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/.NET+3.0/default.aspx">.NET 3.0</category></item><item><title>ReMix 07: Presentando Marca Reader</title><link>http://geeks.ms/blogs/cristian/archive/2007/06/05/remix-07-presentando-marca-reader.aspx</link><pubDate>Tue, 05 Jun 2007 16:50:44 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:15637</guid><dc:creator>Cristian Manteiga</dc:creator><slash:comments>7</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://geeks.ms/blogs/cristian/rsscomments.aspx?PostID=15637</wfw:commentRss><comments>http://geeks.ms/blogs/cristian/archive/2007/06/05/remix-07-presentando-marca-reader.aspx#comments</comments><description>&lt;p&gt;Ayer daba comienzo en el Circulo de Bellas Artes de Madrid el ReMix 07, el primer evento de este tipo en España, que se propone replicar para el público español el evento celebrado hace pocas semanas en Las Vegas.&lt;/p&gt; &lt;p&gt;La verdad es que debo felicitar a todos los que lo han hecho posible, ya que la propuesta ha sido llevada a cabo con gran aceptación y ha resultado tódo un éxito.&lt;/p&gt; &lt;p&gt;Durante la KeyNote de ayer se daban a conocer los primeros desarrollos en WPF de firma nacional, y nosotros hemos tenido el orgullo de encontrarnos entre uno de los presentados.&lt;/p&gt; &lt;p&gt;Se trata de Marca Reader, una aplicación WPF que busca mejorar la experiencia de los usuarios frente a una publicación electrónica, en este caso, Marca, un periódico de tirada nacional de gran alcance.&lt;/p&gt; &lt;p&gt;Marca ha apostado por buscar una forma de incrementar la satisfacción de sus lectores haciendo uso de lás últimas tecnologías de desarrollo de interfaces de usuario, lo que les permitirá ofrecer un valor añadido e incrementar la satisfacción de los lectores.&lt;/p&gt; &lt;p&gt;Desde aquí quiero darles las gracias por ayudarnos a llevar a cabo esta propuesta y por haber apostado por esta iniciativa que ayer se hizo pública y agradecerselo también a todos aquellos que han hecho posible esto.&lt;/p&gt; &lt;p&gt;Como supongo que aquellos que no habéis podido asistir estaréis deseando verla, aquí os dejo una pequeña captura de pantalla.&lt;/p&gt; &lt;p&gt;&lt;a href="http://geeks.ms/blogs/cristian/WindowsLiveWriter/ReMix07PresentandoMarcaReader_1079A/sshot-4.jpg"&gt;&lt;img height="286" alt="Marca Reader" src="http://geeks.ms/blogs/cristian/WindowsLiveWriter/ReMix07PresentandoMarcaReader_1079A/sshot-4_thumb.jpg" width="490" border="0"&gt;&lt;/a&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Desde aquí también quiero hacer un guiño especial a la gente de Indra y de Meta4, que han presentado sus aplicaciones con nosotros.&lt;/p&gt; &lt;p&gt;Felicidades, habéis demostrado que en España también se pueden hacer aplicaciones realmente espectaculares,&amp;nbsp;incluso en aplicaciones&amp;nbsp;de línea de negocio.&lt;/p&gt; &lt;p&gt;Un saludo&lt;/p&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=15637" width="1" height="1"&gt;</description><category domain="http://geeks.ms/blogs/cristian/archive/tags/Vista/default.aspx">Vista</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/WPF/default.aspx">WPF</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/.NET+3.0/default.aspx">.NET 3.0</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/Expression+Blend/default.aspx">Expression Blend</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/Blend/default.aspx">Blend</category></item><item><title>WPF: Aplicaciones de linea de negocio con WPF</title><link>http://geeks.ms/blogs/cristian/archive/2007/05/08/wpf-aplicaciones-de-linea-de-negocio-con-wpf.aspx</link><pubDate>Tue, 08 May 2007 17:13:00 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:14383</guid><dc:creator>Cristian Manteiga</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://geeks.ms/blogs/cristian/rsscomments.aspx?PostID=14383</wfw:commentRss><comments>http://geeks.ms/blogs/cristian/archive/2007/05/08/wpf-aplicaciones-de-linea-de-negocio-con-wpf.aspx#comments</comments><description>&lt;P&gt;Hasta ahora han surgido muchas dudas sobre la eficacia de WPF en aplicaciones de línea de negocio o aplicaciones más clásicas, y para ayudar a solventar esas dudas, el equipo de Dynamics de Microsoft ha presentado una aplicación desarrollada en WPF para su familia de herramientas.&lt;/P&gt;
&lt;P&gt;Esta aplicación ha sido presentada en Las Vegas, con motivo del MIX 2007.&lt;/P&gt;
&lt;P&gt;La verdad es que no tengo palabras para expresar todo lo que han llevado a cabo estos chicos de Redmond, por lo que es mejor que lo veais vosotros mismos en el video donde lo presentan:&lt;/P&gt;
&lt;P&gt;&lt;A href="http://int1.fp.sandpiper.net/soma/applications/silverlight/v1/videos/XBD05.wmv"&gt;http://int1.fp.sandpiper.net/soma/applications/silverlight/v1/videos/XBD05.wmv&lt;/A&gt;&lt;BR&gt;&lt;/P&gt;
&lt;P&gt;En el no solo presentan la aplicación, si no que explican cómo han llevado a cabo el desarrollo de la misma.&lt;/P&gt;
&lt;P&gt;Espero que os guste tanto como a mi, o a &lt;A href="http://geeks.ms/blogs/marco/archive/2007/05/07/titan-en-el-mix-07.aspx"&gt;Marco...&lt;/A&gt;&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=14383" width="1" height="1"&gt;</description><category domain="http://geeks.ms/blogs/cristian/archive/tags/WPF/default.aspx">WPF</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/.NET+3.0/default.aspx">.NET 3.0</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/Expression+Blend/default.aspx">Expression Blend</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/Blend/default.aspx">Blend</category></item><item><title>WPF: Guía de codificación para WPF y XAML</title><link>http://geeks.ms/blogs/cristian/archive/2007/05/07/wpf-gu-237-a-de-codificaci-243-n-para-wpf-y-xaml.aspx</link><pubDate>Mon, 07 May 2007 17:00:00 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:14315</guid><dc:creator>Cristian Manteiga</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://geeks.ms/blogs/cristian/rsscomments.aspx?PostID=14315</wfw:commentRss><comments>http://geeks.ms/blogs/cristian/archive/2007/05/07/wpf-gu-237-a-de-codificaci-243-n-para-wpf-y-xaml.aspx#comments</comments><description>&lt;P&gt;Paul Stovell, MVP en &lt;FONT color=#000000&gt;Client Application Development de Australia, ha publicado en su blog una pequeña guía de codificación para XAML y WPF.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;El artículo está disponible &lt;A href="http://www.paulstovell.net/blog/index.php/xaml-and-wpf-coding-guidelines/"&gt;aquí&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;Espero que os resulte de interés, aunque no es una guía muy extensa, si nos proporciona un buen punto de partida en nuestros desarrollos presentes y futuros en WPF.&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=14315" width="1" height="1"&gt;</description><category domain="http://geeks.ms/blogs/cristian/archive/tags/WPF/default.aspx">WPF</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/.NET+3.0/default.aspx">.NET 3.0</category></item><item><title>WPF: Expression Blend 2 May Preview!!!</title><link>http://geeks.ms/blogs/cristian/archive/2007/05/04/wpf-expression-blend-2-may-preview.aspx</link><pubDate>Fri, 04 May 2007 07:34:00 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:14170</guid><dc:creator>Cristian Manteiga</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://geeks.ms/blogs/cristian/rsscomments.aspx?PostID=14170</wfw:commentRss><comments>http://geeks.ms/blogs/cristian/archive/2007/05/04/wpf-expression-blend-2-may-preview.aspx#comments</comments><description>&lt;P&gt;Hoy me he despertado con varias noticias increibles, no solo tenemos disponible por fin la versión RTM de Expression Blend, a la que esperaba con muchas ganas, si no que además Microsoft nos sorprende con la disponibilidad de la primera Preview de Blend 2, que tendrá soporte para Silverlight.&lt;/P&gt;
&lt;P&gt;Para aquellos que estéis interesados en Blend, podéis ver más&amp;nbsp;información &lt;A href="http://www.microsoft.com/Expression/products/overview.aspx?key=blend"&gt;aquí&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;Además podeis bajaros la primera versión de Blend 2 desde &lt;A href="http://www.microsoft.com/Expression/products/download.aspx?key=blend2maypreview"&gt;aquí&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;Pero&amp;nbsp;las sorpresas no acaban aquí, Expression Media y Expression Design ya son Release Candidate y las podrás encontrar en la web de Microsoft Expression.&lt;/P&gt;
&lt;P&gt;Yo por mi parte estoy deseando probar mi nuevo Expression Studio Edición Limitada, que me ha traido &lt;A href="http://geeks.ms/blogs/ivan"&gt;Iván Gonzalez&lt;/A&gt; desde el MIX de Las Vegas.&lt;BR&gt;&lt;BR&gt;Un saludo.&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=14170" width="1" height="1"&gt;</description><category domain="http://geeks.ms/blogs/cristian/archive/tags/WPF/default.aspx">WPF</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/.NET+3.0/default.aspx">.NET 3.0</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/Expression+Blend/default.aspx">Expression Blend</category></item><item><title>WPF: LinkButton vs Hyperlink, using the right code!!!</title><link>http://geeks.ms/blogs/cristian/archive/2007/02/16/wpf-por-qu-llamarle-linkbutton-cuando-podemos-llamarle-hyperlink.aspx</link><pubDate>Fri, 16 Feb 2007 07:22:00 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:10533</guid><dc:creator>Cristian Manteiga</dc:creator><slash:comments>5</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://geeks.ms/blogs/cristian/rsscomments.aspx?PostID=10533</wfw:commentRss><comments>http://geeks.ms/blogs/cristian/archive/2007/02/16/wpf-por-qu-llamarle-linkbutton-cuando-podemos-llamarle-hyperlink.aspx#comments</comments><description>&lt;P&gt;Hace poco publicaba un post sobre cómo crear un control LinkButton modificando el estilo y la plantilla de un control botón&amp;nbsp;de WPF para añadirle la funcionaldad requerida, que estaba basado en otro post.&lt;BR&gt;Pues bien, replicar contenido, aún manteniendo el origen del mismo, no creo que sea una buena línea a seguir, a pesar de&amp;nbsp;que parezca un buen ejemplo de cómo modificar la funcionalidad de los controles de WPF, rectifico.&lt;/P&gt;
&lt;P&gt;El contenido del post original no es del todo correcto, por lo que, después de pediros mil&amp;nbsp;disculpas a todos por mi error, paso a exponer:&lt;/P&gt;
&lt;P&gt;El control LinkButton como tal no existe en WPF, pero si su sinónimo, es decir, el control Hyperlink, que aporta la misma&amp;nbsp;funcionalidad.&lt;BR&gt;Para usarlo, debemos contener dicho control en un TextBlock en cualquier punto de nuestra interfaz o dentro de un párrafo de texto ya que se trata de un "inline-level flow content element", es decir, un elemento&amp;nbsp;pensado para usar en&amp;nbsp;flujos de&amp;nbsp;líneas de texto.&lt;/P&gt;
&lt;P&gt;Un ejemplo de esto sería:&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="COLOR:blue;"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR:maroon;"&gt;TextBlock&lt;/SPAN&gt;&lt;SPAN style="COLOR:blue;"&gt;&amp;gt;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp; &lt;SPAN style="COLOR:blue;"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR:maroon;"&gt;Hyperlink&lt;/SPAN&gt; NavigateUri=&lt;A&gt;http://geeks.ms&lt;/A&gt;&lt;SPAN style="COLOR:blue;"&gt;&amp;gt;&lt;/SPAN&gt;Geeks·ms&lt;SPAN style="COLOR:blue;"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR:maroon;"&gt;Hyperlink&lt;/SPAN&gt;&lt;SPAN style="COLOR:blue;"&gt;&amp;gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="COLOR:blue;"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR:maroon;"&gt;TextBlock&lt;/SPAN&gt;&lt;SPAN style="COLOR:blue;"&gt;&amp;gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;/P&gt;
&lt;P&gt;Como vemos, es mucho más sencillo y evitamos tener que suscribirnos a un evento y crear código para responder al mismo.&lt;/P&gt;
&lt;P&gt;Espero que os sea de utilidad.&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=10533" width="1" height="1"&gt;</description><category domain="http://geeks.ms/blogs/cristian/archive/tags/WPF/default.aspx">WPF</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/.NET+3.0/default.aspx">.NET 3.0</category></item><item><title>WPF: Crear un control Linkbutton</title><link>http://geeks.ms/blogs/cristian/archive/2007/02/06/wpf-crear-un-control-linkbutton.aspx</link><pubDate>Tue, 06 Feb 2007 18:25:00 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:9919</guid><dc:creator>Cristian Manteiga</dc:creator><slash:comments>3</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://geeks.ms/blogs/cristian/rsscomments.aspx?PostID=9919</wfw:commentRss><comments>http://geeks.ms/blogs/cristian/archive/2007/02/06/wpf-crear-un-control-linkbutton.aspx#comments</comments><description>&lt;P&gt;Windows Presentation Foundation nos aporta la funcionalidad base para desde ella poder crear controles con estructuras y comportamientos más complejos.&lt;/P&gt;
&lt;P&gt;Nos encontramos en ocasiones con que controles que eran para nosotros muy comunes en WinForms ya no está disponibles en WPF, pero sin embargo el tiempo y la complejidad que requiere implementarlos es minúsculo.&lt;/P&gt;
&lt;P&gt;Vease por ejemplo el control LinkButton, que no está disponible en WPF y una posible implementación de este basado en un post de &lt;A class="" href="http://blogs.msdn.com/irenak/archive/2007/02/06/sysk-281-windows-presentation-foundation-wpf-the-missing-linkbutton.aspx" target=_blank&gt;Irena Kennedv (Microsoft Consultant Services)&lt;/A&gt;:&lt;/P&gt;
&lt;P&gt;Dentro de nuestra ventana crearíamos un nuevo estilo dentro de los recursos del Grid (o de la ventana, aplicación...) y se lo aplicaríamos a un control Button de WPF mediante el atributo &lt;STRONG&gt;Style=&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:#666666;FONT-FAMILY:Courier New;BACKGROUND-COLOR:#e4e4e4;"&gt;"{StaticResource LinkButtonStyle}"&lt;/SPAN&gt;&lt;/STRONG&gt;.&lt;BR&gt;El estilo que estamos aplicando modifica la plantilla del control y le aporta el comportamiento deseado.&lt;/P&gt;&lt;FONT color=#0000ff size=2&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;
&lt;TABLE style="BORDER-RIGHT:#e5e5e5 1px solid;BORDER-TOP:#e5e5e5 1px solid;BORDER-LEFT:#e5e5e5 1px solid;BORDER-BOTTOM:#e5e5e5 1px solid;BACKGROUND-COLOR:#f2f2f2;" cellSpacing=0 cellPadding=0&gt;

&lt;TR style="VERTICAL-ALIGN:top;LINE-HEIGHT:normal;"&gt;
&lt;TD style="WIDTH:40px;TEXT-ALIGN:right;"&gt;&lt;PRE style="BORDER-RIGHT:#e7e7e7 1px solid;PADDING-RIGHT:2px;PADDING-LEFT:2px;FONT-SIZE:11px;PADDING-BOTTOM:2px;MARGIN:0px;COLOR:gray;PADDING-TOP:2px;FONT-FAMILY:courier new;"&gt;1&lt;BR&gt;2&lt;BR&gt;3&lt;BR&gt;4&lt;BR&gt;5&lt;BR&gt;6&lt;BR&gt;7&lt;BR&gt;8&lt;BR&gt;9&lt;BR&gt;10&lt;BR&gt;11&lt;BR&gt;12&lt;BR&gt;13&lt;BR&gt;14&lt;BR&gt;15&lt;BR&gt;16&lt;BR&gt;17&lt;BR&gt;18&lt;BR&gt;19&lt;BR&gt;20&lt;BR&gt;21&lt;BR&gt;22&lt;BR&gt;23&lt;BR&gt;24&lt;BR&gt;25&lt;BR&gt;26&lt;BR&gt;27&lt;BR&gt;28&lt;BR&gt;29&lt;BR&gt;30&lt;BR&gt;31&lt;BR&gt;32&lt;BR&gt;33&lt;BR&gt;34&lt;BR&gt;35&lt;BR&gt;36&lt;BR&gt;37&lt;BR&gt;38&lt;BR&gt;39&lt;BR&gt;40&lt;BR&gt;41&lt;BR&gt; &lt;/PRE&gt;&lt;/TD&gt;
&lt;TD&gt;&lt;PRE style="PADDING-RIGHT:2px;PADDING-LEFT:8px;PADDING-BOTTOM:2px;MARGIN:0px;PADDING-TOP:2px;"&gt;&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:black;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;&amp;lt;Window x:Class=&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:#666666;FONT-FAMILY:Courier New;BACKGROUND-COLOR:#e4e4e4;"&gt;"linkdemo.Window1"&lt;/SPAN&gt;&lt;BR&gt;    xmlns=&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:#666666;FONT-FAMILY:Courier New;BACKGROUND-COLOR:#e4e4e4;"&gt;"http://schemas.microsoft.com/winfx/2006/xaml/presentation"&lt;/SPAN&gt;&lt;BR&gt;    xmlns:x=&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:#666666;FONT-FAMILY:Courier New;BACKGROUND-COLOR:#e4e4e4;"&gt;"http://schemas.microsoft.com/winfx/2006/xaml"&lt;/SPAN&gt;&lt;BR&gt;    Title=&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:#666666;FONT-FAMILY:Courier New;BACKGROUND-COLOR:#e4e4e4;"&gt;"linkdemo"&lt;/SPAN&gt; Height=&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:#666666;FONT-FAMILY:Courier New;BACKGROUND-COLOR:#e4e4e4;"&gt;"300"&lt;/SPAN&gt; Width=&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:#666666;FONT-FAMILY:Courier New;BACKGROUND-COLOR:#e4e4e4;"&gt;"300"&lt;/SPAN&gt;&lt;BR&gt;    &amp;gt;&lt;BR&gt;    &amp;lt;Grid&amp;gt;&lt;BR&gt;      &lt;BR&gt;      &amp;lt;Grid.Resources&amp;gt;&lt;BR&gt;        &amp;lt;Style x:Key=&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:#666666;FONT-FAMILY:Courier New;BACKGROUND-COLOR:#e4e4e4;"&gt;"LinkButtonStyle"&lt;/SPAN&gt; TargetType=&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:#666666;FONT-FAMILY:Courier New;BACKGROUND-COLOR:#e4e4e4;"&gt;"{x:Type Button}"&lt;/SPAN&gt;&amp;gt;&lt;BR&gt;          &amp;lt;Setter Property=&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:#666666;FONT-FAMILY:Courier New;BACKGROUND-COLOR:#e4e4e4;"&gt;"SnapsToDevicePixels"&lt;/SPAN&gt; Value=&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:#666666;FONT-FAMILY:Courier New;BACKGROUND-COLOR:#e4e4e4;"&gt;"true"&lt;/SPAN&gt; /&amp;gt;&lt;BR&gt;          &amp;lt;Setter Property=&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:#666666;FONT-FAMILY:Courier New;BACKGROUND-COLOR:#e4e4e4;"&gt;"OverridesDefaultStyle"&lt;/SPAN&gt; Value=&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:#666666;FONT-FAMILY:Courier New;BACKGROUND-COLOR:#e4e4e4;"&gt;"true"&lt;/SPAN&gt; /&amp;gt;&lt;BR&gt;          &amp;lt;Setter Property=&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:#666666;FONT-FAMILY:Courier New;BACKGROUND-COLOR:#e4e4e4;"&gt;"Template"&lt;/SPAN&gt;&amp;gt;&lt;BR&gt;            &amp;lt;Setter.Value&amp;gt;&lt;BR&gt;              &amp;lt;ControlTemplate TargetType=&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:#666666;FONT-FAMILY:Courier New;BACKGROUND-COLOR:#e4e4e4;"&gt;"{x:Type Button}"&lt;/SPAN&gt;&amp;gt;&lt;BR&gt;                &amp;lt;TextBlock x:Name=&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:#666666;FONT-FAMILY:Courier New;BACKGROUND-COLOR:#e4e4e4;"&gt;"tb"&lt;/SPAN&gt; Background=&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:#666666;FONT-FAMILY:Courier New;BACKGROUND-COLOR:#e4e4e4;"&gt;"{x:Null}"&lt;/SPAN&gt; &lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE style="PADDING-RIGHT:2px;PADDING-LEFT:8px;PADDING-BOTTOM:2px;MARGIN:0px;PADDING-TOP:2px;"&gt;&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:black;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Cursor=&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:#666666;FONT-FAMILY:Courier New;BACKGROUND-COLOR:#e4e4e4;"&gt;"Hand"&lt;/SPAN&gt; TextDecorations=&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:#666666;FONT-FAMILY:Courier New;BACKGROUND-COLOR:#e4e4e4;"&gt;"Underline"&lt;/SPAN&gt; &lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE style="PADDING-RIGHT:2px;PADDING-LEFT:8px;PADDING-BOTTOM:2px;MARGIN:0px;PADDING-TOP:2px;"&gt;&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:black;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;TextWrapping=&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:#666666;FONT-FAMILY:Courier New;BACKGROUND-COLOR:#e4e4e4;"&gt;"Wrap"&lt;/SPAN&gt; &amp;gt;&lt;BR&gt;                  &amp;lt;ContentPresenter VerticalAlignment=&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:#666666;FONT-FAMILY:Courier New;BACKGROUND-COLOR:#e4e4e4;"&gt;"Center"&lt;/SPAN&gt; &lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE style="PADDING-RIGHT:2px;PADDING-LEFT:8px;PADDING-BOTTOM:2px;MARGIN:0px;PADDING-TOP:2px;"&gt;&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:black;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;RecognizesAccessKey=&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:#666666;FONT-FAMILY:Courier New;BACKGROUND-COLOR:#e4e4e4;"&gt;"true"&lt;/SPAN&gt;/&amp;gt;&lt;BR&gt;                &amp;lt;/TextBlock&amp;gt;&lt;BR&gt;                &amp;lt;ControlTemplate.Triggers&amp;gt;&lt;BR&gt;                  &amp;lt;Trigger Property=&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:#666666;FONT-FAMILY:Courier New;BACKGROUND-COLOR:#e4e4e4;"&gt;"IsPressed"&lt;/SPAN&gt; Value=&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:#666666;FONT-FAMILY:Courier New;BACKGROUND-COLOR:#e4e4e4;"&gt;"true"&lt;/SPAN&gt; &amp;gt;&lt;BR&gt;                    &amp;lt;Setter Property=&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:#666666;FONT-FAMILY:Courier New;BACKGROUND-COLOR:#e4e4e4;"&gt;"Cursor"&lt;/SPAN&gt; Value=&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:#666666;FONT-FAMILY:Courier New;BACKGROUND-COLOR:#e4e4e4;"&gt;"Hand"&lt;/SPAN&gt; /&amp;gt;&lt;BR&gt;                    &amp;lt;Setter TargetName=&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:#666666;FONT-FAMILY:Courier New;BACKGROUND-COLOR:#e4e4e4;"&gt;"tb"&lt;/SPAN&gt; Property=&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:#666666;FONT-FAMILY:Courier New;BACKGROUND-COLOR:#e4e4e4;"&gt;"BitmapEffect"&lt;/SPAN&gt;&amp;gt;&lt;BR&gt;                      &amp;lt;Setter.Value&amp;gt;&lt;BR&gt;                        &amp;lt;DropShadowBitmapEffect ShadowDepth=&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:#666666;FONT-FAMILY:Courier New;BACKGROUND-COLOR:#e4e4e4;"&gt;"1"&lt;/SPAN&gt; &lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE style="PADDING-RIGHT:2px;PADDING-LEFT:8px;PADDING-BOTTOM:2px;MARGIN:0px;PADDING-TOP:2px;"&gt;&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:black;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Direction=&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:#666666;FONT-FAMILY:Courier New;BACKGROUND-COLOR:#e4e4e4;"&gt;"330"&lt;/SPAN&gt; Color=&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:#666666;FONT-FAMILY:Courier New;BACKGROUND-COLOR:#e4e4e4;"&gt;"Black"&lt;/SPAN&gt; Opacity=&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:#666666;FONT-FAMILY:Courier New;BACKGROUND-COLOR:#e4e4e4;"&gt;"0.5"&lt;/SPAN&gt; &lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE style="PADDING-RIGHT:2px;PADDING-LEFT:8px;PADDING-BOTTOM:2px;MARGIN:0px;PADDING-TOP:2px;"&gt;&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:black;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Softness=&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:#666666;FONT-FAMILY:Courier New;BACKGROUND-COLOR:#e4e4e4;"&gt;"0.25"&lt;/SPAN&gt; /&amp;gt;&lt;BR&gt;                      &amp;lt;/Setter.Value&amp;gt;&lt;BR&gt;                    &amp;lt;/Setter&amp;gt;&lt;BR&gt;                  &amp;lt;/Trigger&amp;gt;&lt;BR&gt;                &amp;lt;/ControlTemplate.Triggers&amp;gt;&lt;BR&gt;              &amp;lt;/ControlTemplate&amp;gt;&lt;BR&gt;            &amp;lt;/Setter.Value&amp;gt;&lt;BR&gt;          &amp;lt;/Setter&amp;gt;&lt;BR&gt;        &amp;lt;/Style&amp;gt;&lt;BR&gt;      &amp;lt;/Grid.Resources&amp;gt;&lt;BR&gt;&lt;BR&gt;      &amp;lt;Button x:Name=&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:#666666;FONT-FAMILY:Courier New;BACKGROUND-COLOR:#e4e4e4;"&gt;"LinkButton1"&lt;/SPAN&gt; Click=&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:#666666;FONT-FAMILY:Courier New;BACKGROUND-COLOR:#e4e4e4;"&gt;"LinkButton1_Click"&lt;/SPAN&gt; &lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE style="PADDING-RIGHT:2px;PADDING-LEFT:8px;PADDING-BOTTOM:2px;MARGIN:0px;PADDING-TOP:2px;"&gt;&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:black;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Style=&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:#666666;FONT-FAMILY:Courier New;BACKGROUND-COLOR:#e4e4e4;"&gt;"{StaticResource LinkButtonStyle}"&lt;/SPAN&gt;&lt;BR&gt;      Foreground=&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:#666666;FONT-FAMILY:Courier New;BACKGROUND-COLOR:#e4e4e4;"&gt;"Blue"&lt;/SPAN&gt; Height &lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:red;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:#666666;FONT-FAMILY:Courier New;BACKGROUND-COLOR:#e4e4e4;"&gt;"18"&lt;/SPAN&gt; Width=&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:#666666;FONT-FAMILY:Courier New;BACKGROUND-COLOR:#e4e4e4;"&gt;"120px"&lt;/SPAN&gt; &amp;gt;&lt;BR&gt;        Escribe el texto aquí...&lt;BR&gt;      &amp;lt;/Button&amp;gt;&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;    &amp;lt;/Grid&amp;gt;&lt;BR&gt;&amp;lt;/Window&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TABLE&gt;&lt;/P&gt;&lt;/FONT&gt;
&lt;P&gt;Y además&amp;nbsp;creamos nuestro manejador del evento Click mediante un delegado en nuestro código lateral para darle funcionalidad:&lt;BR&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#0000ff size=2&gt;
&lt;TABLE style="BORDER-RIGHT:#e5e5e5 1px solid;BORDER-TOP:#e5e5e5 1px solid;BORDER-LEFT:#e5e5e5 1px solid;BORDER-BOTTOM:#e5e5e5 1px solid;BACKGROUND-COLOR:#f2f2f2;" cellSpacing=0 cellPadding=0&gt;

&lt;TR style="VERTICAL-ALIGN:top;LINE-HEIGHT:normal;"&gt;
&lt;TD style="WIDTH:40px;TEXT-ALIGN:right;"&gt;&lt;PRE style="BORDER-RIGHT:#e7e7e7 1px solid;PADDING-RIGHT:2px;PADDING-LEFT:2px;FONT-SIZE:11px;PADDING-BOTTOM:2px;MARGIN:0px;COLOR:gray;PADDING-TOP:2px;FONT-FAMILY:courier new;"&gt;1&lt;BR&gt;2&lt;BR&gt;3&lt;BR&gt;4&lt;BR&gt;5&lt;BR&gt;6&lt;BR&gt;7&lt;BR&gt;8&lt;BR&gt;9&lt;BR&gt;10&lt;BR&gt;11&lt;BR&gt;12&lt;BR&gt;13&lt;BR&gt;14&lt;BR&gt;15&lt;BR&gt;16&lt;BR&gt;17&lt;BR&gt;18&lt;BR&gt;19&lt;BR&gt;20&lt;BR&gt;21&lt;BR&gt; &lt;/PRE&gt;&lt;/TD&gt;
&lt;TD&gt;&lt;PRE style="PADDING-RIGHT:2px;PADDING-LEFT:8px;PADDING-BOTTOM:2px;MARGIN:0px;PADDING-TOP:2px;"&gt;&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:black;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:blue;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;namespace&lt;/SPAN&gt; linkdemo&lt;BR&gt;{&lt;BR&gt;    &lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:green;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;/// &amp;lt;summary&amp;gt;&lt;/SPAN&gt;&lt;BR&gt;    &lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:green;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;/// Interaction logic for Window1.xaml&lt;/SPAN&gt;&lt;BR&gt;    &lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:green;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;/// &amp;lt;/summary&amp;gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;BR&gt;    &lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:blue;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;public&lt;/SPAN&gt; partial &lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:blue;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;class&lt;/SPAN&gt; Window1 : System.Windows.Window&lt;BR&gt;    {&lt;BR&gt;&lt;BR&gt;        &lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:blue;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;public&lt;/SPAN&gt; Window1()&lt;BR&gt;        {&lt;BR&gt;            InitializeComponent();&lt;BR&gt;        }&lt;BR&gt;&lt;BR&gt;        &lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:blue;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;void&lt;/SPAN&gt; LinkButton1_Click(&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:blue;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;object&lt;/SPAN&gt; sender, RoutedEventArgs e)&lt;BR&gt;        {&lt;BR&gt;            &lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:green;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;//Escribe tu código aquí...&lt;/SPAN&gt;&lt;BR&gt;        }&lt;BR&gt;&lt;BR&gt;    }&lt;BR&gt;}&lt;/SPAN&gt;&lt;/PRE&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TABLE&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=9919" width="1" height="1"&gt;</description><category domain="http://geeks.ms/blogs/cristian/archive/tags/WPF/default.aspx">WPF</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/.NET+3.0/default.aspx">.NET 3.0</category></item><item><title>WPF: Una instalación perfecta para trabajar con WPF</title><link>http://geeks.ms/blogs/cristian/archive/2007/01/25/wpf-una-instalaci-n-perfecta-para-trabajar-con-wpf.aspx</link><pubDate>Thu, 25 Jan 2007 08:00:00 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:9196</guid><dc:creator>Cristian Manteiga</dc:creator><slash:comments>14</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://geeks.ms/blogs/cristian/rsscomments.aspx?PostID=9196</wfw:commentRss><comments>http://geeks.ms/blogs/cristian/archive/2007/01/25/wpf-una-instalaci-n-perfecta-para-trabajar-con-wpf.aspx#comments</comments><description>Para empezar a trabajar con .NET 3.0 y con Windows Presentation Foundation hay que tener una buena máquina de base, y no me refiero a solamente a la configuración hardware del sistema, si no a un conjunto de aplicaciones que ayuden a que nuestro trabajo diario sea más productivo y fácil de llevar a cabo. 
&lt;P&gt;Para ello voy a publicar una pequeña guía de software que os ayudará a hacer esto posible:&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;Base del sistema:&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Windows Vista, a ser posible con la edición Bussiness o Ultimate para disfrutar de una mejor experiencia en el desarrollo de interfaces con WPF. &lt;/LI&gt;
&lt;LI&gt;Visual Studio 2005&amp;nbsp;con el&amp;nbsp;&lt;A href="http://www.microsoft.com/downloads/details.aspx?FamilyId=BB4A75AB-E2D4-4C96-B39D-37BAF6B5B1DC&amp;amp;displaylang=en"&gt;Service Pack 1&lt;/A&gt;&amp;nbsp;y el&amp;nbsp;parche&amp;nbsp;&lt;A href="http://www.microsoft.com/downloads/details.aspx?FamilyID=fb6bb56a-10b7-4c05-b81c-5863284503cf"&gt;Windows Vista Support Files&lt;/A&gt; &lt;/LI&gt;
&lt;LI&gt;Además de las &lt;A href="http://www.microsoft.com/downloads/details.aspx?FamilyId=F54F5537-CC86-4BF5-AE44-F5A1E805680D&amp;amp;displaylang=en"&gt;Visual Studio 2005 Extensions for .NET Framework 3.0&lt;/A&gt; &lt;/LI&gt;
&lt;LI&gt;&lt;A href="http://www.microsoft.com/downloads/details.aspx?FamilyId=C2B1E300-F358-4523-B479-F53D234CDCCF&amp;amp;displaylang=en"&gt;Windows Vista&amp;nbsp;SDK&lt;/A&gt; para tener siempre a mano un buen lugar de consulta. &lt;/LI&gt;
&lt;LI&gt;Además de &lt;A href="http://www.microsoft.com/products/expression/en/Expression-Blend/try.mspx"&gt;Expression Blend Beta 1&lt;/A&gt;&amp;nbsp;y &lt;A href="http://www.microsoft.com/products/expression/en/Expression-Design/default.mspx"&gt;Expression Design December CTP&lt;/A&gt;&amp;nbsp;para el desarrollo de interfaces.&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;STRONG&gt;Añadidos a Visual Studio:&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;A href="http://scorbs.com/2006/06/04/vs-template-flexible-application"&gt;Flexible Application Template&lt;/A&gt;: Esta plantilla nos proporciona un tipo de proyecto que nos permitirá cambiar el despliegue desde Visual Studio y cambiar entre aplicación de escritorio y aplicación XBAP para navegadores.&lt;/LI&gt;
&lt;LI&gt;&lt;A href="http://www.charlespetzold.com/wpf/WpfEmptyProject.zip" target=_blank&gt;Empty Project Template&lt;/A&gt;&amp;nbsp;es una plantilla de proyecto para VS2005 que nos permite crear proyectos vacíos creado por Charles Petzold.&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;STRONG&gt;Editores de XAML:&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;A href="http://blogs.msdn.com/llobo/archive/2006/12/30/xamlpadx-v2.aspx"&gt;XamlPadX&lt;/A&gt;: Extensión del XamlPad que acompaña al SDK.&lt;/LI&gt;
&lt;LI&gt;&lt;A href="http://notstatic.com/archives/64"&gt;Kaxaml&lt;/A&gt;: Editor que acepta code snnipets y con una interfaz simple y agradable.&lt;/LI&gt;
&lt;LI&gt;&lt;A href="http://www.charlespetzold.com/wpf/"&gt;XamlCruncher&lt;/A&gt;: Editor de Charles Petzold que acompaña a su libro con el &lt;A href="http://www.microsoft.com/mspress/companion/0-7356-1957-3/"&gt;código fuente&lt;/A&gt;.&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;STRONG&gt;Herramientas de depuración y rendimiento:&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;A href="http://www.blois.us/Snoop/"&gt;Snoop&lt;/A&gt;: Herramienta de Peter Blois' para depurar de forma visual aplicaciones WPF.&lt;/LI&gt;
&lt;LI&gt;&lt;A href="http://www.aisto.com/roeder/dotnet/"&gt;Lutz Roeder's .NET Reflector&lt;/A&gt;: Navegar entre el arbol de clases de un ensamblado.&lt;/LI&gt;
&lt;LI&gt;&lt;A href="http://notstatic.com/archives/64"&gt;WPF Performance Tools&lt;/A&gt;: Herramientas de rendimiento integradas como parte del SDK. &lt;/LI&gt;
&lt;LI&gt;&lt;A href="http://wpf.netfx3.com/files/folders/developer/entry5155.aspx"&gt;UI Automation Stress:&lt;/A&gt; pruebas de estrés para el entorno de nuestra aplicación WPF.&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;STRONG&gt;Herramientas para Interfaces en 3D:&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;A href="http://www.erain.com/Products/ZAM3D/DefaultPDC.asp"&gt;ZAM 3D&lt;/A&gt;: Utilidad para crear y animar objetos en 3D y exportarlos a XAML para usarlos en nuestras aplicaciones. &lt;/LI&gt;
&lt;LI&gt;&lt;A href="http://www.codeplex.com/3DTools/Release/ProjectReleases.aspx?"&gt;3D Tools for WPF&lt;/A&gt;: librería que nos permite interactuar con elementos 2D en objetos 3D.&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;STRONG&gt;Colección de controles para WPF:&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;A href="http://wpf.netfx3.com/files/folders/controls/entry7094.aspx"&gt;Kevin's Bag-o-Tricks&lt;/A&gt;: Una colección de controles que extienden y mejoran los disponibles en WPF.&lt;/LI&gt;&lt;/UL&gt;
&lt;P class=MsoNormal style="MARGIN:0cm 0cm 10pt;LINE-HEIGHT:normal;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:'Arial','sans-serif';mso-fareast-font-family:'Times New Roman';"&gt;Y con esto ya tenemos a nuestra disposición una máquina preparada para comenzar a trabajar con Windows Presentation Foundation e indagar en todas las posibilidades que nos ofrece el nuevo subsistema gráfico de Windows.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=9196" width="1" height="1"&gt;</description><category domain="http://geeks.ms/blogs/cristian/archive/tags/WPF/default.aspx">WPF</category><category domain="http://geeks.ms/blogs/cristian/archive/tags/.NET+3.0/default.aspx">.NET 3.0</category></item></channel></rss>