Microsoft Expression Blend Vývoj WPF aplikací Dalibor Kačmář Microsoft
funkce + vzhled + příbuznost + příběh = UX1 funkce + vzhled + příbuznost + příběh = UX1 = User eXperiance (zkušenost uživatele)
WPF Demo Prospector WPF Demo - prospector
XBAP XBAP Demo AMG XBAP Demo – AMG2
Silverlight Demo Vista.si WPF/E Demo = www.windowsvista.si
Předchozí ukázky možné pouze díky Windows Presentation Foundation Jednotný přístup k UI, dokumentům a médiím Integrace jako součást vývoje pocitů Integrovaná, vektorově-orientovaný kompozitní engine Využití výkonu PC formou grafických služeb Deklarativní programování Zapojíme designery přímo do vývoje aplikací
Windows Presentation Foundation WPF je budoucností prezentační technologie Windows WPF je excelentní pro Windows aplikace s komplexními scénáři vizualizace dat Web portály, které chtějí posunout meze pocitů uživatelů Jiné technologie jsou dnes však stále dobrým řešením Windows Forms je stále nejlepší řešení pro typické klientské Windows aplikace DirectX je stále platformou pro extrémně náročnou grafiku (hry, CAD aplikace) ASP.NET je řešením pro serverové, platformně neutrální aplikace
Architektura
Co to je XAML? eXtensible Application Markup Language Deklarativní značkovací jazyk popisující uživatelská rozhraní
Proč deklarativní? <Button Background="Red">WPF je super!</Button> versus Button btn = new Button(); btn.Background = Colors.Red; btn.Content = " WPF je super!"; this.Children.Add( btn );
XAML XAML Designer Developer XHTML CSS / XSLT XML ASP.NET Nestandardní VB.NET Papír JPG / TIFF PSD PPT MOV / WMV XAML XHTML CSS / XSLT XML ASP.NET AJAX Nestandardní kód 11/19/2006
Profesionální nástroj pro Web designéry Whether you are designing rich standards-based websites, ultimate experiences on the desktop, or managing digital assets and content, Expression professional design tools give you the flexibility and freedom to bring your vision to reality. Profesionální nástroj pro Web designéry Profesionální nástroj pro design Interakce Profesionální nástroj pro Grafické designéry Profesionální nástroj pro Management zdrojů
Expression Blend Vaše pískoviště se právě zvětšilo Umění a technologie Navrhněte nevídané Windows aplikace, které míchají to nejlepší z webu a desktopu Spolupracujte s vývojáři za pomocí Visual Studia a získejte novou úroveň produktivity mezi designerem a vývojářem Umění a technologie Namíchejte plné spektrum designerských elementů včetně vektorové grafiky, bitových obrázků, textu s vysokou kvalitou, videem a reálným 3D obsahem Plný tollbox ovládacích prvků pro tvorbu přitažlivého UI Celá platforma Využijte plného výkonu Windows Vista, od desktopu až po prohlížeč Navrhněte úplnou uživatelskou zkušenost a bohatou grafikou, animacemi a interaktivním UI
Požadavky Operační systém – Windows XP SP2, Windows Vista Procesor – 2GHz a více 1 GB RAM Disk – 20 MB Display – 1280 x 1024 Video karta – podpora DirectX 9.0, 256 MB RAM
Prostředí Microsoft Expression Blend Demo Prostředí Microsoft Expression Blend Ukázat - Rozložení okna - Rozdíly mezi Design a Animation Workspace - Nastavení velikosti prostředí a dalších vlastností prostředí - Zapnutí Gridu - Snipping - Tool box (levá lišta) - Asset Library - Project Panel - Property Panel + Advanced Property Settings - Resource Panel
Části WPF aplikace Rozložení Ovládací prvky a styly Transfor-mace Data binding Akce Obsah Entity Text Media Animace Systém. zdroje
Rozložení (Layout) Canvas StackPanel DockPanel WrapPanel Grid
Práce se Layout systémem Demo Práce se Layout systémem Ukázat - Implicitní Grid - Změna kořenového layoutu - Grid – módy zobrazení, rozdělení (fixní, proporční *, automatické – podle rodiče) - Pozicování potomků – uzamykání ke bokům, zarovnání, nastavení okrajů - Grid Splitter
Ovládací prvky Všechny standardní prvky jsou dostupné a některé nové Třídy jsou společné pro Windows Presentation Foundation System.Windows.Controls, nikoli System.Windows.Forms.Controls
Styly ovládacích prvků Individuální nastavení stylu komponent je neproduktivní Styl centralizuje nastavení společné pro konkrétní element pro společné vlastnosti různých elementů Nastavení jsou pojmenovaná nebo typově-orientovaná Vlastnosti definované stylem Lze deklarativně dědit Lze deklarativně předefinovat na úrovni elementu Nastavit programově Styl lze kombinovat s datovou šablonou Oddělení datové vazby od nastavení vzhledu
Šablona ovládacího prvku Ovládací prvky bez vzhledu Poskytují implicitní look-and-feel, může být přepsán Na rozdíl od stylu mění elementy použité pro vykreslení prvku a ne jen jejich atributy Logické stromy vs. Visuální stromy Logický strom je binární reprezentací XAML souboru Visuální strom je graf, který obsahuje všechny data potřebná pro složení a vykreslení stránky Přepište Visuální strom, aby jste změnili šablonu ovládacích prvků
Logické a Visuální stromy <StackPanel> <ListBox> <ListBoxItem>Cat</ListBoxItem> <ListBoxItem>Dog</ListBoxItem> </ListBox> <Button>Hello World!</Button> </StackPanel>
2D tvary Rectangle Ellipse Polyline Polygon Path Elementy UI stromu Stejné jako jiné ovládací prvky a elementy Mohou mít k sobě připojeny události, např. klik myši Rectangle Ellipse Polyline Polygon Path WPF offers a set of drawing primitive elements. These can be used in your user interface tree like any other element. They are fully integrated into WPF, so they participate in layout, and work just like any other element in your UI. This means graphics can be created entirely in markup – there is no need to use code to use graphics primitives. (Although you can use code if you like.) The Path shape is particularly powerful. In fact it offers a superset of the functionality of all the other shapes – the rest are really only present for convenience. Path supports shapes made up out of any combination of Bezier curves, elliptical arcs, and straight lines. You can use any number of any of these types of line to define the outline of a shape. You can also add multiple ‘figures’ to a Path – this means a shape can have more than one outline, making it possible to define shapes with holes in.
Příklady použití Tvary jsou přístupné z kódu v pozadí <Canvas Width="100" Height="100"> <Ellipse x:Name="hlava" Fill="Yellow" Stroke="Black" StrokeThickness="7" Width="100" Height="100" /> <Ellipse Fill="Black" Width="10" Height="15" Canvas.Left="28" Canvas.Top="28" /> Canvas.Left="62" Canvas.Top="28" /> <Path Stroke="Black" StrokeThickness="6" Data="M 30,60 Q 50,90 70,60" /> </Canvas> Tvary jsou přístupné z kódu v pozadí Změna vlastnosti se automaticky projeví na obrazovce // ...kód v pozadí hlava.Width = 200;
Transformace Jakýkoli element lze transformovat Transformace nedeformuje kvalitu Transformace Předdefinované rotace, zvětšení, zkosení, posuv a obecná maticová 3D ekvivalenty Vliv na umístění tvaru LayoutTransform Prvek je nejdříve transformován a pak aplikován layout RenderTransform Layout neví o transformaci Any element can have a transform applied to it. You can either apply a RenderTransform, which modifies how the element appears without changing layout behavior. Or you can specify a LayoutTransform, in which case the layout system will take the effects of the transform into account. You can apply any combination of scaling, rotation, shearing, and translation. (I.e. any affine transformation. Affine transformations are ones that preserve straight lines – points lying in a straight line before the transform will also lie in a straight line after the transform.)
Vytvoření a použití stylu Vytvoření a použití šablony Demo Vytvoření a použití stylu Vytvoření a použití šablony Ukázat - Vložit tlačítko - Vytvořit nový styl – aplikace podle jména, podle typu, umístění - Vytvořit nový styl na základě existující - Vytvořit novou šablonu, vytvořit novou za základě exitující - ukázat u ContentPrezenter nastavení vazby na TemplateBinding – Horizonta + Vertical Alignment (XXXContentAlignement), Margin (Padding) - Aplikovat ji na tlačítko
Data Binding Control Property Binding Property “Data Item” Cíl Jakákoli vlastnost nebo element Zdroj CLR objekt WPF element ADO.NET XML Různé modely One Time One Way Two Way Control Property Binding Property “Data Item”
Směr toku dat OneWay TwoWay OneWayToSource OneTime Změna ve zdroji dat je automaticky propagována do UI Typicky pro Read-only vlastnosti UI elementů TwoWay Změny ve zdroji dat i UI jsou navzájem synchronizovány Např. Editbox, CheckBox atd. OneWayToSource Propagovány jsou pouze změny v UI zpět do datového zdroje OneTime Zdroj inicializuje cíl pouze 1x Typicky pro statický obsah nebo zobrazení aktuálního stavu
Datový kontext Datový kontext je místo, kde data binding hledá informace zdroji dat Definován na úrovni každého FrameworkElementu a FrameworkContentElementu Hledání zdroje dat začíná u elementu samotného a postupuje směrem ke kořeni dokumentu <Window …> 3 2 <Grid …> 1 <TextBox Text = "{Binding Path=Jmeno}“ … />
Sdílení společných zdrojů DataContext= {Binding Source={StaticResource mojeData}} StackPanel HorizontalSlider Value= {Binding Path=PoziceX} Value= {Binding Path=PoziceX, Source={StaticResource mojeData}} Image Canvas.Left= {Binding Path=PoziceX} Canvas.Left= {Binding Path=PoziceX, Source={StaticResource mojeData}}
Datová šablona Datová šablona prezentuje informace datového zdroje konkrétního typu Často použita pro položky kolekce class Car { string Image {get;set;} string Model {get;set;} } <DataTemplate x:Key="carTemplate"> <Border BorderBrush="Blue" BorderThickness="2" Background="LightGray"> <StackPanel> <Image HorizontalAlignment="Center" Source="{Binding Path=Image}" /> <Border HorizontalAlignment="Center" BorderBrush="Navy"> <TextBlock FontSize="18" Text="{Binding Path=Model}" /> </Border> </StackPanel> </DataTemplate> A data template defines how to present the information from a data source of a particular type. A template usually lives in a resource dictionary, and is simply a chunk of markup with {Binding} expressions. When a control presents data using a data template, it is as though the template is copied into that control, and its DataContext set to the data source. (This means that none of the binding expressions need to specify a source – they can just assume that the source will be an instance of the type the template is designed to present.)
Databinding Property binding XML Data source Demo Databinding Property binding XML Data source Ukázat - Vložit tlačítko - Vytvořit nový styl – aplikace podle jména, podle typu, umístění - Vytvořit nový styl na základě existující - Vytvořit novou šablonu, vytvořit novou za základě exitující - ukázat u ContentPrezenter nastavení vazby na TemplateBinding – Horizonta + Vertical Alignment (XXXContentAlignement), Margin (Padding) - Aplikovat ji na tlačítko
Akce Triggery Umožňuje, aby některé UI události byly zpracovány pomocí XAML, místo code-behind Vhodné pro věci jako “mouse over” efekty Typy Property a Event Property trigger má uzavřený cyklus nastavení vlastnosti Event trigger je pouhým „spouštěčem“ Mění styl nebo spouštějí animaci Události Ovládací prvky podporují všechny standardní události jako click, key press, selection changed, atd. Události jsou zpracovány v code-behind souboru v jazycích C# nebo VB
Deklarativní animace Popisují animačnímu systému průběh Např. změň šířku (Width) z 10 na 100 během 10 sekund Zbytek proveden automaticky Bez nutnosti nastavit časovače Bez nutnosti vlastního vykreslování Code is usually not required to animate the UI – WPF supports declarative animation. You can also animate from code as well if you like, but even there, it’s a usually a matter of telling the animation system what you’d like it to do for you, and letting it get on with it. The system will take care of regularly updating the display to keep the animation running. Typ animace <DoubleAnimation From="10" To="100" Duration="0:0:10" Storyboard.TargetName="myellipse" Storyboard.TargetProperty="(Ellipse.Width)" /> Parametry animace Cíl animace Animovaná vlastnost
Elementy animací Storyboad Trigger Timeline Animation Koordinuje běh několika animací Trigger Spouští animaci událostí nebo hodnotou vlastnosti Timeline Definuje časový rozsah animace Organizovány hierarchicky a paralelně Animation Specifické pro animovanou vlastnost 24 typů animací Např. Color/Point/Single/Double/Rect3DAnimation There are three key concepts in the animation programming model. Triggers control when animations are launched. Elements, styles and templates can have a Triggers section. This can contain two kinds of trigger: event triggers and property triggers. Property triggers are level-based a trigger is on if the specified property matches a certain value, otherwise it is off. This level-based nature means that property triggers cannot be used for starting animations, since this requires a trigger at a particular moment in time. Event triggers are edge-based rather than level-based – an event trigger fires when its chosen event is raised, or when a property changes state. For example, you could use the Mouse.MouseEnter event to trigger a particular animation. Or you can specify a set of animations to run when a particular property-based trigger becomes true, and a second set to run when it becomes false. Timelines represent a particular stretch of time, and usually define something that happens during that time. Timelines can be composed into hierarchies, allowing multiple animations to be orchestrated. Everything inside a Storyboard element is a Timeline of some description. All element types that derive from Timeline represent some particular stretch of time. They all have a BeginTime (which in the case of nested timelines is relative to their parent’s BeginTime). All timelines have a Duration, although the Duration may be implicit – if you do not specify a timeline’s Duration, it will be determined by the end times of the children – whichever child animation finishes last, its finish time determines the parent’s implied duration. ParallelTimeline elements are used to group other animations together. Animation timelines such as DoubleAnimation or ColorAnimation indicate how the target property is to be animated. Animations describe how a particular property is to be changed by the animation system. Animation timeline must be of a type matching the target property, e.g. DoubleAnimation for a property of type Double, ColorAnimation for one of Color, etc. This describes the way in which the property should be animated. The Storyboard.TargetName indicates the element to be animated. It specifies the name of the target element – this must correspond to the x:Name attribute of an element derived from FrameworkElement. The Storyboard.TargetProperty attribute indicates the name of the property to be animated. The property must always be specified as (ElementType.PropertyName). It is possible to drill into subproperties with the path. For example, if the target element’s Fill property were set to be a SolidColorBrush, you could use a Path of “(Ellipse.Fill).(SolidColorBrush.Color)” to animate the brush color. (This is the only way to animate a brush – the Brush class does not derive from FrameworkElement, so it cannot be specified as the Storyboard.TargetName.)
„Key Frame“ animace Profesionální animace definovány sérií klíčových pozic objektů Místo série animací, definuje tyto pozice Pro hladší průběh lze použít spline funkce If you are using animation to move some object around, you may want it to follow a more complex path than a straightforward move from one point to another. You could achieve this by stringing together a sequence of animations one after the other. However, the Key Frame Animation types provide a way of specifying a series of points at various offsets into the animation. The value will be interpolated between these. This approach is named after a common technique in conventional animation. An animated scene will typically have the most important frames drawn first – these ‘key frames’ will define the basic flow and character of the animation. Once these are defined, the remaining frames are drawn by interpolating between key frames. In WPF, you can define these key frames and let the animation system perform the interpolation for you. Note that this is somewhat different from conventional animation key frames – you do not get to provide two complete drawings, and have the system interpolate between these – you are still just modifying property values on a single scene. WPF has no built-in way of ‘morphing’ from one shape to another automatically. Key frame animations can use either linear or spline interpolation. Linear interpolation just moves values at constant speed between any two key frames. This results in rather stilted and jagged motion. Using splines lets you smooth things out a little. Splines are a little tricky to get used to – you are not simply defining a curve for an object to follow – splines are used at the level of individual properties, so you might specify a spline defining how just the X coordinate behaves! The curve defined by the spline is actually a curve in the graph representing space vs time. This allows you to control the acceleration and deceleration. (By controlling acceleration and deceleration of X and Y coordinates independently, it is possible to introduce curved motion.)
Demo Animace v aplikaci
MS Webová platforma Dostupný Bohatý Microsoft Web Platforma Microsoft UX technologie XAML / .NET FX Vysoká kvalita a výkon Plná integrace s desktopem „Za hranice prohlížeče“ Plná vývojová platforma XAML, řízený kód XBAP Windows Presentation Foundation Obohacený prohlížeč “Silverlight” + “AJAX” XAML / .NET FX Grafika, média, animace Neutrální platforma Bezbariérová dostupnost Nízké latence, lepší UX Plná podpora standardů Dostupný Bohatý XAML, řízený kód, JavaScript Libovolný prohlížeč “AJAX” JavaScript
Silverlight Vlastnosti 4/9/2017 10:43 PM Silverlight Vlastnosti Document Services User Interface Services XPS Documents Application Services Controls Databinding Packaging Services Deployment Services Layout Media Integration Layer Base Services Imaging 2D Text Audio XAML Effects 3D Video Accessibility Animation Input & Eventing Composition Engine Property System © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
Silverlight Architektura 4/9/2017 10:43 PM Silverlight Architektura Prohlížeč Aplikace / OS Balíček obsahu Obrázky Fonty Video/Audio XML - Data XAML Programový Model JavaScript Nativní API C# / VB.NET Plug-ins Platformově specifický model hostování “WPF/E” Runtime Nativní “WPF/E” API UI & vykreslovací jádro Vrstva platformové abstrakce © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
Silverlight Architektura Platformy Podporované prohlížeče Internet Explorer 6.0 + FireFox 1.0 + Mozila 1.0 + Safari 1.0 + Opera 7.0 + Podpora OS: Win XP + OS X 10.* Platforma Video WMA, WMV a MP3 kodek Alpha kanál HTTP Progressive Download HTTP Streaming Verze 2 RTSP DRM CLR (v2) MSIL kompatibilní C# či Visual Basic Managed DOM manipulace Sandboxed CLR Vrstva integrace médií Audio Video Composition Engine Základní služby XML/XAML Parser Accessibility Property System Input and Eventing Text Imaging 2D Animation Další služby Core Controls Basic Layout Container Controls UI a vykreslování Payload XAML XML - Data Fonts Video/Audio Images IL “Atlas” Scripts JavaScript Programming Model JavaScript “Atlas” C# / VB.NET Native API Media 1.1 MB UI XAML
Silverlight a WPF Silverlight je podmnožinou WPF Jsou podobné 4/9/2017 10:43 PM Silverlight a WPF Silverlight je podmnožinou WPF Jedná se zatím o kódové jméno Jsou podobné Podmožina jazyku XAML Využívají se stejné nástroje ale zároveň různé Velikost a vlastnosti: Silverlight ~ 1.1 MB (.NET 3.0 ~25MB) Nepotřebuje .NET 3.0 ani WPF Běží vždy v SandBoxu Podpora více platforem OS Prohlížeč MICROSOFT CONFIDENTIAL © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Vytváříme Silverlight aplikaci Demo Vytváříme Silverlight aplikaci
Instalace Silverlight plug-in pro prohlížeč http://go.microsoft.com/fwlink/?LinkID=77792&clcid=0x409 Silverlight SDK http://go.microsoft.com/fwlink/?linkid=77791&clcid=0x409 Silverlight podpora ve VS 2005 http://msdn2.microsoft.com/en-us/library/bb190632.aspx#starting_with_wpf-e_topic5
Microsoft Confidential – NDA Required Expression Studio 45 Microsoft Confidential – NDA Required 11/19/2006
Profesionální nástroj pro Web designéry Whether you are designing rich standards-based websites, ultimate experiences on the desktop, or managing digital assets and content, Expression professional design tools give you the flexibility and freedom to bring your vision to reality. Profesionální nástroj pro Web designéry Profesionální nástroj pro design Interakce Profesionální nástroj pro Grafické designéry Profesionální nástroj pro Management zdrojů
Expression Blend Vaše pískoviště se právě zvětšilo Umění a technologie Navrhněte nevídané Windows aplikace, které míchají to nejlepší z webu a desktopu Spolupracujte s vývojáři za pomocí Visual Studia a získejte novou úroveň produktivity mezi designerem a vývojářem Umění a technologie Namíchejte plné spektrum designerských elementů včetně vektorové grafiky, bitových obrázků, textu s vysokou kvalitou, videem a reálným 3D obsahem Plný tollbox ovládacích prvků pro tvorbu přitažlivého UI Celá platforma Využijte plného výkonu Windows Vista, od desktopu až po prohlížeč Navrhněte úplnou uživatelskou zkušenost a bohatou grafikou, animacemi a interaktivním UI
Expression Design Rozšiřte si své portfolio Navržen pro Design Navrhněte si UI elementy pro Windows aplikace Perfektní spoluhráč pro Expression Blend Navržen pro Design Moderní UI rozhraní napsané od počátku určené pro profesionální designery Výkonné vektorové kreslící nástroje a nedestruktivní efekty Vaše vize, Neomezena Zajišťuje integritu návrhu díky výměnnému XAML formátu a workflow Exportujte své návrhy v XAML kódu a budou použitelné pro návrh libovolného UI a skinování ovládacích prvků
Expression Web Nová éra, nové nástroje Profesionální Postaven na moderních standardech určených pro návrh webu s plnou podporou pro XHTML, CSS, XML, and XSLT Drag and drop ASP.NET 2.0 Spolupracujte s vývojáři ve Visual Studiu pro maximální flexibilitu návrhu web aplikacís Profesionální Professional UI nabízí přesnou kontrolu nad rozložením stránky a formátováním Vizuální návrháři a specializované panely pro práci s CSS styly Vyznáváte standardy Vytvářejte vysoce kvalitní, dynamické a interaktivní stránky, které využívají plný výkon webu Plná podpora pro standardy, přístupnost a kompatibilitu napříč prohlížeči
Expression Media Tame Your Media Your Workflow, Enhanced Manage all of your media assets in one place with extensive annotations, metadata, search, and browsing (even while offline) Support for over 100 different media formats and file types, including images, fonts, and video Your Workflow, Enhanced Rename, convert, tag, and batch process files quickly, and use powerful search to find and retrieve the files you need Edit images and keep track of changes with version control and folder watching Presentation is Everything Export files to multiple formats, build slide shows and videos, or create professional Web galleries Includes Expression Media Encoder, for conversion, enhancement, and compression of rich Web video 11/19/2006
Expression Media Encoder a feature of Expression Media Tame your Video Compression Workflow Batch import WMV, AVI, MPEG, QT, and more via plug-ins. Integrate easily into existing workfow Powerful command-line encoder for application and server-based integration Enhance Effortlessly Trim, crop, resize, add bumpers, markers, overlays, and more to your video Professional effects and alpha compositing support Extensible metadata management for asset tracking Publish for the Web and beyond Stunning quality with Emmy® Award winning Windows Media & SMPTE VC-1 compression Customizable publishing profiles for desktop, Web, and devices. Template-based “WPF/E” publishing for cross-platform, cross-browser playback
Závěr WPF a Silverlight usnadňují vytvářet aplikace se zcela odlišnou zkušeností uživatele Silverlight pro vývoj interaktivních webových aplikací vycházející z XAML Expression studio pro tvorbu nových typů aplikací s intenzivním designem
Zdroje http://msdn.microsoft.com/wpfe 4/9/2017 10:43 PM Zdroje http://msdn.microsoft.com/wpfe http://channel9.msdn.com/playground/wpfe/ http://blogs.msdn.com/mharsh http://blogs.msdn.com/jstegman MICROSOFT CONFIDENTIAL © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Lokální vývojářské zdroje Slovenský a český MSDN web Semináře, produktové informace, proma, informace o podpoře, ... http://www.microsoft.com/slovakia/msdn http://www.microsoft.com/cze/msdn CZ/SK technologické webcasty ke stažení http://www.microsoft.com/cze/msdn/webcasts/default.mspx Navíc si je můžete zdarma objednat na DVD https://www.microsoft.com/cze/msdn/connection/default.mspx Slovenské příručky a praktická cvičení (HOL-y) V průběhu jara na témata ASP.NET AJAX, Expression nástroje, XNA atd. www.microsoft.com/slovakia/msdn