o-LIVE-r

Windows, Windows Phone, Silverlight, Internet Explorer, and the Cloud

  • o-LIVE-r

    Windows 7: Beherrsche die Maschine und flieg nach Las Vegas

    • 0 Comments

    Seit einigen Tagen läuft unser Wettbewerb rund um Windows 7-Anwendungen. Die ersten Einreichungen haben uns bereits erreicht und überrascht.

    Wer mehr Informationen und Anregungen haben möchte, für den habe ich dieses Video produziert.

    Bei Fragen und Mangel an Ideen, einfach eine Email an mich.

    Viel Spaß und Erfolg,
    Oliver

  • o-LIVE-r

    Windows 7: Spaß beim Programmieren–Die Taschenlampe

    • 0 Comments

    Diese Anwendung demonstriert, wie leicht man den Benutzer “bespaßen” kann, in dem man ihm das Desktoplicht ausknipst und eine Taschenlampe anschaltet.

    Die Anwendung kann hier heruntergeladen werden.

  • o-LIVE-r

    Windows 7: Spass beim Programmieren - Die Taschenlampe

    Diese Anwendung demonstriert wie leicht man den Desktop auf spielerische Art und Weise verändern kann.

    Dazu wird in diesem Beispiel der Desktop abgedunkelt und kann nur mit einer kleinen Taschenlampe erhellt werden.

    Der Sourcecode dazu kann auf

  • o-LIVE-r

    Zweite .NET Community Konferenz der User Group Konstanz-Kreuzlingen

    • 0 Comments

    imageDie .NET User Group Konstanz-Kreuzlingen veranstaltete am 20.08.2011 die zweite .NET Community Konferenz in Kreuzlingen am Bodensee. Eine Konferenz von und für die .NET Community und Interessierte in der Schweiz, Deutschland und Österreich.

    Diese Konferenz bietet den Teilnehmern viele interessante Vorträge aus dem .NET-Umfeld, vorgetragen von namhaften Entwicklern aus der .NET-Community: Agenda

    Die See# Party soll eine günstige und nahe Alternative zu den großen Konferenzen darstellen.

    Mehr Informationen gibt es hier.

  • o-LIVE-r

    Windows Phone GPS Emulator

    • 2 Comments

    Alle Windows Phone 7 haben GPS eingebauten. Die Nutzung auf einem echten Telefon funktioniert auch super. Nur leider zeigt der Emulator dort einige Schwächen. Um auch wechselnde Positionen im Windows Phone 7 Emulator testen zu können, gibt es jetzt eine GPS Emulator, der dem Telefon wechselnde Postion vortäuscht.

    image

    Der Download dazu befindet sich hier.

  • o-LIVE-r

    Ideen für verrückte Windows 7-Anwendungen (Teil 1)

    • 0 Comments

    Wie wäre es wenn man Windows mal richtig wörtlich nimmt und aus dem Desktop eine echte Glasscheibe machen würde.

    image

    Man nimmt einfach einen Screenshot vom aktuellen Desktop, zeigt diesen Bildschirm füllend an und bei jedem Mausklick wird Loch in die Fenster scheibe eingefügt. Ein Beispiel wie dies in Silverlight funktioniert ist hier zu finden.

  • o-LIVE-r

    Coding4Fun Toolkit Version 1 für Windows Phone veröffentlicht

    • 0 Comments

    Coding4Fun hat ein Toolkit für Windows Phone 7-Steuerelemente veröffentlicht. Darin enthalten sind diverse neue Steuerelemente, die so derzeit nicht im Basis-SDK für Windows Phone 7 enthalten sind, wie z.B.:

    • About Prompt
    • Input Prompt
    • Progress Overlay
    • Round Button
    • Round Toggle Button
    • Memory Counter
    • TimeSpan Picker

    image

    Mehr Informationen und Download

  • o-LIVE-r

    Wie man Flash Mobs mit einem Telefon koordinieren könnte ;-)

    • 0 Comments

    Für ein Marketingvideo sehr nett gemacht …

    Besonders schön finde ich, das ich den Pioneer Square tatsächliche kenne und dort bald wieder in meinem Lieblingskaffeeladen sitzen werde.

  • o-LIVE-r

    Die Windows 7 Werkbank–Das Rüstzeug für einen Trip nach Las Vegas

    • 0 Comments

    Wer will nach Las Vegas?

    Baut eine Windows 7-Desktop-Anwendung die mindestens ein Windows 7-Feature verwendet …. schickt sie an uns und packt schon mal die Koffer und die Sonnencreme ein.

    Mehr Informationen gibt es unter http://www.windows7.de/maschine

    Inspirationen für Windows 7-Anwendungen gibt es hier:

    Get Microsoft Silverlight

  • o-LIVE-r

    MSDN-On-Tour–Tag 0–Der Bus ist da …

    • 0 Comments

    Heute bei Microsoft in Unterschleißheim reingerollt … der MSDN-Tour Bus. Der erste Mitfahrer ist auch schon da.

    image

    http://www.msdn-on-tour.de/

  • o-LIVE-r

    Tribut an das Pixel

    • 0 Comments

    „Das Pixel“ ist ein Buch über die Geschichte, die Technik sowie die Relevanz und das Wesen des Pixels. Es war uns ein Anliegen und eine Freude, ihm auf diese Art und Weise Aufmerksamkeit zukommen zu lassen.

    Ein Bachelorprojekt von David Blank & Florian Hägele

    image

    Mehr Informationen hier

    Haben wollen.

  • o-LIVE-r

    Reisekostenabrechnen auf Silverlight-Art

    • 0 Comments

    Eine sehr schöne Art und Weise, wie man mit Silverlight seine Reisekosten abrechnen könnte, sieht man hier. image

  • o-LIVE-r

    Register Early for MIX11 & Save

    • 0 Comments

    clip_image001

    clip_image002

    clip_image003clip_image004clip_image006clip_image007

    clip_image008

    clip_image009

         
     

    Early birds save big! Register by February 11 and save $500 on your conference pass and get one free hotel night. Register Now.

    clip_image010

    Unplug from your day job. Be inspired at MIX.

    Join the conversation at MIX – see the latest tools and technologies and draw inspiration from a professional community of your peers and experts. More About MIX.

    · PREVIEW THE NEXT WEB
    MIX is where you’ll learn about the future of web, from the diversity of devices and interaction models on the front-end, to the tools and technologies that power the user experience, to the services that make it all possible. There’s no better place to hear about the future of Silverlight, Internet Explorer, Windows Phone, ASP.NET, and technologies like HTML5 and CSS3.

    · GET REAL ANSWERS FROM THE EXPERTS
    MIX isn’t just about getting a first look at the latest technologies and trends – it’s an opportunity for you to have your questions answered by industry and Microsoft experts.

    · NETWORK WITH THE COMMUNITY
    MIX is a gathering of developers, designers, UX experts and business professionals creating the most innovative and profitable consumer sites on the web. The opportunities for networking are limitless…this is Las Vegas, after all.

    clip_image010[1]

     
     

    Pre-Event Boot Camps at MIX11

    Arrive a day early and immerse yourself in a full day of exclusive content presented by the industry’s most regarded experts. Whether you’re a designer or a developer, there’s a MIX Boot Camp for you. Learn more about Boot Camps.

    clip_image011

    See full list of MIX Boot Camp speakers.

     
           

     

    clip_image012

    clip_image013

  • o-LIVE-r

    Kostenloser Ganztages-Workshop zu Webmatrix – Webcamp in Bad Homburg & München

    • 2 Comments

    Mit Microsoft Webmatrix ist das Entwickeln beeindruckender Webseiten so einfach wie noch nie. Egal ob Sie Ihre Seite von Grund auf neu entwerfen, bestehende Templates nutzen oder eines der vielen kostenlosen Open Source Frameworks aus der Web App Gallery. Sie haben die Wahl ob Sie Ihre Seiten mit ASP.NET oder php erarbeiten. Und das alles kostenlos!

    Lernen Sie in diesem kostenlosen Eintages-Workshop Webmatrix näher kennen, bauen Sie gemeinsam mit unseren Trainern Dariusz Parys und Christian Wenz Ihre erste WebMatrix Anwendung und unternehmen Sie einen Ausflug in die Welt von jQuery und HTML 5. In einem anschließenden Lab können Sie Ihr erlerntes Wissen sofort anwenden.

    Alle Informationen zu Webmatrix sowie den Downloadlink finden Sie hier: www.microsoft.com/web/webmatrix

    Agenda

    Uhrzeit

    Inhalt

    09.00 – 09.15

    Begrüßung und Organisatorisches

    09.15 – 10.15

    Rundflug WebMatrix

    10.15 – 10.30

    Kaffeepause

    10.30 – 12.30

    Anwendungen mit WebMatrix bauen

    12.30 – 13.15

    Lunch

    13.15 – 14.15

    jQuery + HTML 5

    14.15 – 17.00

    Lab (mit spontanen Kaffeepausen)

    Anmeldung

    Webcamp in Unterschleißheim

    Webcamp in Bad Homburg

    Datum: 31. März

    Ort: Microsoft Niederlassung Unterschleißheim, Konrad-Zuse-Straße 1, 85716 Unterschleißheim

    Anmeldung

    Datum: 23. März

    Ort: Microsoft Niederlassung Bad Homburg, Siemensstraße 27, 61352 Bad Homburg

    Anmeldung

    Sprecher

    clip_image001

    Christian Wenz ist einer der Gründer der Münchner Agentur Arrabiata Solutions GmbH (http://www.arrabiata.de/) und verantwortet dort die Konzeption und Entwicklung von komplexen Web- und mobilen Applikationen. Seine aktuelle Steckenpferde sind Web Application Security, Cross-Device-Publishing von Anwendung sowie die wiederentdeckte Sympathie für JavaScript. Er ist Autor von über 100 Büchern und wurde in zehn Sprachen übersetzt. Der Microsoft MVP für ASP.NET und ASPInsider spricht regelmäßig auf weltweiten Entwicklerkonferenzen wie TechEd Europe und DevConnections und publiziert in verschiedenen Fachzeitschriften.

    clip_image002

    Dariusz Parys ist seit 2007 als Technical Strategist Web Platform bei der D&PE und seit 2000 bei Microsoft Deutschland tätig. Sein Themenschwerpunkt liegt auf der Microsoft Web Platform und verwandten Technologien. Davor war Dariusz zwei Jahre lang bei einem Großkonzern als Enterprise Architect für Microsoft Consulting Services tätig. Sein Wissen und seine Erfahrung vermittelt er in Vorträgen auf zahlreichen Entwicklerkonferenzen und Workshops. Sie erreichen ihn über seinen Blog unter http://downtocode.net und über Twitter @writeline.

    Bitte bringen Sie folgendes mit: Laptop + Stromkabel

    Für Verpflegung während des Tages ist natürlich gesorgt

    Wir freuen uns auf Ihre Anmeldung!

  • o-LIVE-r

    Die Windows Phone 7 Must Have Toolkits

    • 0 Comments

    Rudi Grobler hat eine sehr gute Übersicht über die “MUST HAVE” Toolkits für Windows Phone 7 erstellt.

    Mehr Infos hier.

  • o-LIVE-r

    Leisure-Suit Larry is back in HTML5

    • 0 Comments

    image

    Mehr Informationen: http://www.sarien.net/larry

  • o-LIVE-r

    Support Day: Stellen Sie uns Ihre Fragen!

    • 0 Comments

    Egal ob Visual Studio, Windows Phone 7 oder Word – Sie haben Fragen zu Microsoft Technologien? Dann stellen Sie Ihre Fragen unseren Kollegen von /TechStudent am 28. Januar auf www.facebook.com/techstudentgermany- und sie antworten Ihnen!
    So funktioniert es: Schreiben Sie Ihre Fragen einfach zwischen 10 und 16 Uhr auf die Pinnwand der Fanpage. Unsere Experten werden Ihnen all Ihre Fragen schnellstmöglich beantworten. Unter allen Fragestellenden werden zudem 1x Wireless Notebook Presenter Mouse 8000 und 5x Notebook Optical Mouse verlost. Zur TechStudent-Facebook-Fanpageimg_supportday_367x242_V07

  • o-LIVE-r

    Mit Windows 7 nach Las Vegas

    • 0 Comments

    20070429_170211

    Das ist nicht Paris.

    20070429_181213

    Das ist nicht Venedig.

    20070429_205411

    Und nein, das ist auch nicht Ägypten.

    20070429_204043

    Und New York ist das auch nicht.

    20070429_213213 - Kopie

    Das ist Vegas … Las Vegas. Die Stadt des Entertainments, des Gamblings und der Mix2011.

    Und wir bringen Sie hin. Und wie?

    Bauen sie eine verrückte, coole, lustige, hilfreiche, abgefahrene Windows 7 Desktop-Anwendung, die mindestens ein Windows 7-Feature verwendet.

    Mehr Informationen dazu gibt es unter http://www.windows7.de/maschine

    Viel Erfolg und Spaß,
    Oliver

  • o-LIVE-r

    .NET-Portabilität mit den Portable Library Tools

    • 0 Comments

    Einmal schreiben und verwenden für Windows, Silverlight, Windows Phone und Xbox360, und das Ganze bitte in C# oder in Visual Basic? Bitteschön: Mit den Portable Library Tools, einem Add-in für Visual Studio 2010, kein Problem. Mit einer Einschränkung: Noch steht der wertvolle Helfer erst in einer öffentlichen Vorabversion bereit. Technische Unterschiede (etwa, dass Sie unter Windows Phone und Xbox360 kein MEF verwenden können) werden auch nicht durch Wunderhand ausgeräumt, dafür aber berücksichtigt: Für welche Plattform Sie primär entwickeln wollen, legen Sie trotz allem fest, womit dann die verfügbaren APIs definiert wären und Ihnen per Intellisense aufgezeigt (oder eben zutreffend vorenthalten) werden.
    Auf unserer Zielseite erfahren Sie mehr über das im Entwicklungsstadium befindliche Projekt, das derzeit noch dieBetaversion von Visual Studio 2010 Service Pack 1 benötigt und zum Betrieb erstellter Bibliotheken im Fall dreier API-Funktionen auf ein noch kommendes Silverlight 4-Update angewiesen ist. Für Interessierte steht auch ein einstündiger Vortrag von Shawn Burke auf der PDC10 sowie die zugehörigen PowerPoint-Slides zum Thema bereit.

  • o-LIVE-r

    Lösen von Windows Phone 7 Debugging Problemen

    • 0 Comments

    Auf diesen Hinweis haben bestimmt viele gewartet (ich selbst auch). Aus dem Blog meines Kollegen Max Knor kommt die folgende Hilfe

    Kennen Sie folgendes Problem? Videos spiele nicht, wann immer sie die Applikation debuggen? Sobald Sie die Applikation ohne Debugger (& Kabel) starten spielt das Video?

    Das Problem liegt nicht am Debugger, sondern am ZUNE Client. Dieser überträgt nicht nur Debugging Informationen sondern ist auch für die Synchronisation von Videos, Bildern & Marketplace Infos zuständig.

    Aus diesem Grund SPERRT der ZUNE Client am Phone die entsprechenden Applikationen, solange der Client läuft. Sie sehen dann folgenden Bildschirm, wenn Sie z.B. in die “Bilder” Applikation gehen:

    Photo_7B72BED8-EF8A-7DB8-3FA9-4818875BBD81

    Anders wenn Sie ein MediaElement in Ihrer Anwendung verwenden – dann kommt lediglich einMediaFailed Event.

    Was ist nun die Lösung dieses Problems? Etwa auf Debugigng bei Videos verzichten? Weit gefehlt!

    Laden Sie sich dieses Update für die WP7 Developer Tools herunter!

    Danach finden sie die WPConnect.exe im Verzeichnis C:\Program Files (x86)\microsoft sdks\Windows Phone\v7.0\Tools\WPConnect\.

    Schließen Sie den Zune Client und starten statt dessen WPConnect.exe. Fertig! Nun können Sie Videos, Marketplace und andere Dinge in Ihrer Applikation nutzen, obwohl das Phone für Debugging mittels Kabel mit dem PC verbunden ist.”

    Mehr Informationen von Max Knor hier.

  • o-LIVE-r

    Multi-Touch Manipulation-Behavior für Silverlight und Windows Phone 7

    • 0 Comments

    Auf der Expression Code Gallery gibt es sehr leicht zu verwendende Behaviors für Silverlight und Windows Phone mit dem man Multi-Touch-Manipulationen wie Schieben, Skalieren und Rotieren in eigene Anwendungen bekommt.

    image

    Mehr Informationen und Download hier.

  • o-LIVE-r

    Entwicklen für Windows 7–Kostenloses Trainingspaket

    • 0 Comments

    Auf Channel 9, dem Microsoft Online Entwickler Fernsehen, gibt es für jeden interessierten Windows 7 Entwickler ein sehr umfassendes Paket an Trainingsressourcen zum Download und ausprobieren.

    image

    Mehr Informationen

  • o-LIVE-r

    Mit einem Behavior den Glaseffekt in WPF aktivieren

    • 0 Comments

    In der Expression Code Gallery gibt es zum freien Download ein Behavior mit dem man via Drag und Drop in Expression Blend, den Glass-Effekt in eigenen Fenstern innerhalb seiner Anwendung nutzen kann.

    image

    Mehr Informationen und download hier.

  • o-LIVE-r

    Oberflächen mit PixelShadern bearbeiten

    • 0 Comments

    In diesem Beispiel möchte ich zeigen, wie leicht man Effekte mit Pixelshadern auf den Bildschirm zaubern kann.

    Dazu erstellen wir hier eine kleine Anwendung, die als erstes einen Screenshot vom aktuellen Bildschirm macht und dem Benutzer im Vollbild anzeigt. Genau genommen bedeutet das, das wir dem Benutzer versuchen zu seinen Originalbildschirm vorzutäuschen und mit einigen Effekten zu versehen.

    Dazu erstellen wir als erstes eine neue Windows Presentation Foundation-Anwendung mit Visual Studio:

    image

    Als nächsten machen wir einen Screenshot vom Bildschirm.

    Wie erstellt man einen Screenshot vom aktuellen Bildschirm?

    In der .NET-Bibliothek “System.Windows.Forms” befindet sich der Namespace SystemInformation. Mit diesem lassen sich Informationen über den Bildschirm ermitteln. Diese nehmen wir als Hilfe für die CaptureScreen-Methode

     
    public Bitmap CaptureScreen()
    {
        Bitmap bmp = new Bitmap(SystemInformation.VirtualScreen.Width, SystemInformation.VirtualScreen.Height);
        Graphics g = Graphics.FromImage(bmp);
        g.CopyFromScreen(0, 0, 0, 0, bmp.Size);
        g.Dispose();
        return bmp;
    }

    Die Bitmap-Klasse befindet sich in der Bibliothek “System.Drawing”.

    Um aus einem Bitmap eine BitmapSource für ein WPF-Image machen zu können benötigt man die folgende Methode:

     
        public static BitmapSource CreateBitmapSource(System.Drawing.Bitmap bmp)
        {
            return Imaging.CreateBitmapSourceFromHBitmap(
                bmp.GetHbitmap(),
                IntPtr.Zero,
                Int32Rect.Empty,
                BitmapSizeOptions.FromEmptyOptions());
        }

    Diese Methode rufen wir direkt zum Start auf, und weisen das Ergebnis einem Image-Objekt zu, das wir in der MainWindow.xaml wie folgt definiert haben.

    <Window
        x:Class="PixelShaderWPF.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow"
        Height="350"
        Width="525">
        <Grid>
            <Image
                x:Name="backgroundImage" />
        </Grid>
    </Window>

    Der gesamte Code bisher:

    public partial class MainWindow : Window
    {
       public MainWindow()
       {
           InitializeComponent();
     
           // Create Screen Shot
           Bitmap bmp = CaptureScreen();
           BitmapSource bmpSrc = CreateBitmapSource(bmp);
           backgroundImage.Source = bmpSrc;
       }
     
       public Bitmap CaptureScreen()
       {
           Bitmap bmp = new Bitmap(SystemInformation.VirtualScreen.Width, SystemInformation.VirtualScreen.Height);
           Graphics g = Graphics.FromImage(bmp);
           g.CopyFromScreen(0, 0, 0, 0, bmp.Size);
           g.Dispose();
           return bmp;
       }
     
       public static BitmapSource CreateBitmapSource(System.Drawing.Bitmap bmp)
       {
           return Imaging.CreateBitmapSourceFromHBitmap(
               bmp.GetHbitmap(),
               IntPtr.Zero,
               Int32Rect.Empty,
               BitmapSizeOptions.FromEmptyOptions());
       }
    }

    Wenn wir die Anwendung nun starten, erhalten wir die folgende Ansicht:

    image

    Bitte nicht wundern, ich habe zwei Bildschirme, und die Screenshot-Methode macht direkt von beiden einen Screenshot.

    Jetzt wollen wir dem Benutzer dieses Bild über seinen gesamten Bildschirm legen und ihn damit vormachen, er würde auf seinem normalen Bildschirm arbeiten. Damit er aber jederzeit wieder in den normalen Modus kommt, geben wir ihm einen Schließen-Button.

    <Button
        x:Name="closeWindow"
        Content="Close Fake App"
        Click="closeWindow_Click" 
        VerticalAlignment="Top"
        HorizontalAlignment="Right"/>

    Dahinter liegt der folgende Eventhandler:

    private void closeWindow_Click(object sender, RoutedEventArgs e)
    {
        App.Current.Shutdown();
    }

    Wie kann man am leichtesten seine Anwendung in den Vollbildschirm-Modus schalten?

    Die Windows-Bibliothek user32.dll beinhaltet Funktionen mit denen man seinen Bildschirm “screenshoten” kann. Diese Funktionalität habe ich in die Klasse FullScreenHelper ausgelagert, damit der Code übersichtlich bleibt.

    public static class FullScreenHelper
    {  
        public static void GoFullscreen(this Window window)  
        {      
            // Make window borderless      
            window.WindowStyle = WindowStyle.None;      
            window.ResizeMode = ResizeMode.NoResize;      
            
            // Get handle for nearest monitor to this window      
            WindowInteropHelper wih = new WindowInteropHelper(window);      
            IntPtr hMonitor = MonitorFromWindow(wih.Handle, MONITOR_DEFAULTTONEAREST);      
     
            // Get monitor info      
            MONITORINFOEX monitorInfo = new MONITORINFOEX();    
            monitorInfo.cbSize = Marshal.SizeOf(monitorInfo);     
            GetMonitorInfo(new HandleRef(window, hMonitor), monitorInfo);    
     
            // Create working area dimensions, converted to DPI-independent values  
            HwndSource source = HwndSource.FromHwnd(wih.Handle);    
            if (source == null) return; 
            // Should never be null     
            if (source.CompositionTarget == null) 
                return; 
     
            // Should never be null     
            Matrix matrix = source.CompositionTarget.TransformFromDevice;    
            RECT workingArea = monitorInfo.rcMonitor;    
            Point dpiIndependentSize =       
                matrix.Transform(         
                new Point(            
                    workingArea.Right - workingArea.Left,  
                    workingArea.Bottom - workingArea.Top));   
            // Maximize the window to the device-independent working area ie   
            // the area without the taskbar.    
            // NOTE - window state must be set to Maximized as this adds certain  
            // maximized behaviors eg you can't move a window while it is maximized, 
            // such as by calling Window.DragMove     
            window.MaxWidth = dpiIndependentSize.X;    
            window.MaxHeight = dpiIndependentSize.Y;     
            window.WindowState = WindowState.Maximized;
        }  
        
        // Nearest monitor to window  
        const int MONITOR_DEFAULTTONEAREST = 2; 
        
        // To get a handle to the specified monitor  
        
        [DllImport("user32.dll")]  
        static extern IntPtr MonitorFromWindow(IntPtr hwnd, int dwFlags); 
     
        // To get the working area of the specified monitor 
        [DllImport("user32.dll")] 
        public static extern bool GetMonitorInfo(HandleRef hmonitor, [In, Out] MONITORINFOEX monitorInfo);  
        
        // Rectangle (used by MONITORINFOEX)  
        [StructLayout(LayoutKind.Sequential)]  
        public struct RECT 
        {     
            public int Left;   
            public int Top;     
            public int Right;     
            public int Bottom;  
        } 
        
        // Monitor information (used by GetMonitorInfo()) 
        [StructLayout(LayoutKind.Sequential)]  
        public class MONITORINFOEX  
        {   
            public int cbSize;  
            public RECT rcMonitor;
            // Total area   
            public RECT rcWork;
            // Working area  
            public int dwFlags;  
            [MarshalAs(UnmanagedType.ByValArray, SizeConst = 0x20)]     
            public char[] szDevice;
        }
    }

    Diese verwenden wir direkt zu beginn in unserer Anwendung im Loaded-Ereignis.

    this.Loaded += (s, e) =>
        {
            // Activate Fullscreen
            FullScreenHelper.GoFullscreen(this);
        };

    Möchte man nun auf diesen Fake-Bildschirm einen Pixelshader-Effekt anwenden, kann man sehr einfach einen der einbauten Effekte, wie z.B. Blur verwenden. Dazu habe ich einige Buttons in die MainWindow.xaml eingebaut und mit Eventhandlern versehen.

    <StackPanel 
        HorizontalAlignment="Left">
        <Button
            Content="Reset all Effects"
            x:Name="resetEffects"
            Click="resetEffects_Click" />
        <Button
            Content="Blur Effect"
            x:Name="blurEffect" 
            Click="blurEffect_Click"/>
        <Button
            Content="Monochrome Effect"
            x:Name="monochromeEffect"
            Click="monochromeEffect_Click" />
    </StackPanel>

    Die Eventhandler sind wie folgt definiert in der MainWindow.xaml.cs-Datei:

    private void blurEffect_Click(object sender, RoutedEventArgs e)
    {
       System.Windows.Media.Effects.BlurEffect blur = new System.Windows.Media.Effects.BlurEffect();
       backgroundImage.Effect = blur;
    }
     
    private void monochromeEffect_Click(object sender, RoutedEventArgs e)
    {
       Microsoft.Samples.ShaderEffects.MonochromeEffect monochrome = new Microsoft.Samples.ShaderEffects.MonochromeEffect();
       backgroundImage.Effect = monochrome;
    }
     
    private void resetEffects_Click(object sender, RoutedEventArgs e)
    {
       backgroundImage.Effect = null;
    }

    Wichtiger Hinweis: Leider bringt WPF nur wenige Pixelshader-Effekte mit sich. Weitere Pixelshader befinden sich in allerdings im Win7ToGo-Projekt auf Codeplex (Link)

    Der Blur-Effekt sieht da wie folgt aus:

    image

    Der Monochrome-Effekt sieht so aus:

    image

    Damit kann man schon so manchen Benutzer “verwirren” und einige Späße machen.

    Treibt man nun das Ganze etwas weiter, so kann man die Effekte auch mit Animationen verbinden. Ein Beispiel wäre z.B. das man beim Klicken der Maus einen Ripple/Tropfen-Effekt auf die Oberfläche zaubert.

    image

    Dazu benötigt man wirklich nicht viel Code.

    void MainWindow_MouseLeftButtonDown(object sender, System.Windows.Input.MouseButtonEventArgs e)
    {
        System.Windows.Point p = e.GetPosition(this);
        Microsoft.Samples.ShaderEffects.RippleEffect ripple = new Microsoft.Samples.ShaderEffects.RippleEffect();
        
        double centerX = p.X / backgroundImage.ActualWidth;
        double centerY = p.Y / backgroundImage.ActualHeight;
        ripple.Center = new System.Windows.Point(centerX, centerY);
        ripple.Amplitude = .5;
        ripple.Frequency = 50;
        ripple.Phase = 0;
        
        backgroundImage.Effect = ripple;
     
        DoubleAnimation da = new DoubleAnimation();
        da.From = 0;
        da.To = 50;
        da.AutoReverse = true;
     
        da.Duration = new Duration(TimeSpan.FromSeconds(5));
        ripple.BeginAnimation(Microsoft.Samples.ShaderEffects.RippleEffect.FrequencyProperty, da);
    }

    Das gesamte Beispiel kann hier heruntergeladen werden: Codeplex-Projekt

  • o-LIVE-r

    Windows 7: Bau etwas Verrücktes!!!

    • 0 Comments

    Seid einigen Tagen läuft unser Wettbewerb “Beherrsch die Maschine”. Und kaum ist der Wettbewerb angelaufen, haben uns schon die ersten Einreichungen erreicht.

    Wer gerne mitmachen möchte schaut sich auf diese Seite um: http://www.windows7.de/maschine.

    Was aber wenn man sich die Frage stellt: “Was soll ich eigentlich bauen?”, aber keine Ideen hat?

    Hier einige Ideen:

    • Nutze Features aus Windows 7
    • Multitouch
    • Die neue Ribbon
    • Glass-Effekte
    • Taskleiten und Sprunglisten-Funktionen
    • Energie-Management
    • Suche
    • Stellt Informationen Funky dar
    • Baut Hilfstools für tägliche Arbeiten
    • Bau einen Tempomat für die Maus
      Wie schnell bewegt sich die Maus über den Desktop? Und wieviele Kilometer, wird sie pro Tag über den Bildschirm geschubst?
    • Bau eine Stromverbrauchsanzeige für deine Maschine
      Wann verbraucht sie mehr oder weniger Strom?
    • Bau ein Such-Programm das deine Dateien schöner präsentiert

    Mehr Anregungen in den nächsten Tagen.

    Hier geht es zum Gewinnspiel

Page 1 of 3 (54 items) 123