VS2010 Crash cuando abre ficheros XAML

Hoy me ha ocurrido una incidencia que me ha llevado un buen rato resolver, Visual Studio ha comenzado al colgarse al abrir ficheros XAML, después de desinstalar VS2010, Silverlight4 tools para VS, RIA SERVICES y todo lo que podía pensar que podía fallar el problema seguía persistiendo, gracias a los chicos de silverlight.net que han aportado una solución que en mi caso a funcionado. http://forums.silverlight.net/t/234697.aspx/1, el tema era desisntalar de la GAC el archivo system.windows.dll.

Espero que os sea de ayuda…

 

Imprimir con LightSwitch y ActiveReports6 (y III)

En esta tercera y última parte llegamos al final del artículo y Joan Miquel Fernandez termina mostrandonos como crear el formato de impresión y su uso en el Visor (Viewer) SilverLight de ActiveReports6 dentro de aplicaciones LightSwitch.
Comenzamos cambiando el modelo de vista del proyecto. De Logical View a File View.
En el proyecto Cliente añadimos un nuevo Item.
De tipo Active Reports 6 (Xml File) y lo llamamos report.rpx
Abrimos el fichero con Visual Studio, ya está listo para trabajar con él.
Clicamos en el Elemento Detail (clicar en el icono)
Seleccionamos la pestaña SQL y construimos la ConnectionString
Dejo un ejemplo de la ConnectionString que he utilizado, si teneis alguna duda de como se construye podeis consultar en http://www.connectionstrings.com/

 data source=.\SQLExpress;initial catalog=series;persist security info=False;user id=test;password=1234;
De todas maneras con la opción Build, la podeis construir.
Detalle de la conexión
Introducimos la query: Select * from ventas
Mediante el modo Preview podemos ir cambiando a la previsualización y con el modo Design a diseño.

Desde View/Toolbars de Visual Studio mostramos el Report Explorer 6 y arrastramos los campos al report.

Mediante el modo Preview podemos ir cambiando a la previsualización y con el modo Design a diseño.
Accedemos al proyecto ServerGenerated
Modificamos el webconfig y añadirmos los httphandlers para los rpx
 < add verb="*" path="*.rpx" type="DataDynamics.ActiveReports.Web.Handlers.RpxHandler, ActiveReports.Web, Version=6.2.3164.0,Culture=neutral, PublicKeyToken=cc4967777c49a3ff" />
Para utilizar el rpx tenemos que copiarlo en la carpeta donde se ejecute el programa
..\TestLightSwitchAR6\TestLightSwitchAR6\Client
Accedemos al proyecto cliente y copiamos el report.rpx
Lo copiamos en la carpeta debug, ojo que en Client también hay otra carpeta bin\debug ;O
TestLightSwitchAR6\TestLightSwitchAR6\Bin\Debug
Cuando ejecutemos el visor ya podemos acceder al informe report.rpx que hemos creado.
¿Qué viene ahora? – En este tutorial hemos visto el trabajo básico con el rpx. Como habeis visto no es un ejemplo funcional sino que explica que cosas hay que hacer para poder abrir un rpx desde LS. También deja sin explicar como seleccionar un grupo de registros en concreto, eso será parte del próximo tutorial, ha quedado fuera de este para no generar excesiva complejidad.
Los archivos para descarga están disponibles aquí.

http://cid-7968f234f468d7a5.office.live.com/embedicon.aspx/.Public/TestLightSwitchAR6

Ejemplo de EventAgregator en SilverLight 4 (I)

El uso de un EventAggregator es muy útil en el diseño de aplicaciones que tienen diversos objetos que producen eventos, esto lo podemos entender facilmente si pensamos en una aplicación en el que haya varios formularios o páginas que necesitan intercambiar información entre los eventos que se producen. En el ejemplo que voy a comentar me baso en una aplicación Silverlight 4 que tiene un MainPage.xaml y dos páginas: Page1.xaml y Page2.xaml, cada una de estas páginas tiene un boton que debe actualizar un label en la MainPage.xaml.

En esta primera parte realizaremos simplemente las interficies sin aplicar la lógica del EventAgreggator que la añadiremos más adelante.

  1. Creamos una aplicación SilverLight en Visual Studio
  2. Creamos los label tal y como están en la imágen y añadimos dos border que contendrán las páginas page1 y page2 que crearemos más adelante.
  3. Creamos la Page1.xaml
     

    Le añadimos un botón

  4. Creamos la Page2.xaml
    Le añadimos un botón
  5. Por último añadimos el siguiente código c#

public MainPage()
 {
InitializeComponent();

border1.Child = new Page1();
border2.Child = new Page2();

 }

Aquí tienes el link de ddscarga: EventAggregatorTest_PartI.rar

Login de inicio al comienzo de la aplicación en business application

Un pequeño cambio en la aplicación por defecto de bussiness application para que nos pida el login al iniciar la aplicación.

private void UserControl_Loaded(object sender, RoutedEventArgs e)
{
LoginRegistrationWindow loginWindow = new LoginRegistrationWindow();
loginWindow.Show();
}

[/sourcecode]