in

ExpressionBlog.com

Microsoft Expression Studio Community

This Blog

Syndication

Mirrored Blogs

Browse by Tags

All Tags » tutorials (RSS)
  • Tutorial on Styles & Templates Now Available

    I’m very pleased to announce that my latest tutorial, on Styles, Templates and the Visual State Manager is now available, in HTML , or as a PDF , and the complete source code is available as well. The Visual State Manager is a very exciting part of the new Parts model that decouples the logic of controls from their UI, leading to the startling realization that every control is lookless and you are free to change the look of every control in the toolbox. This tutorial examines the three fundamental ways you might modify the appearance of a control: In-line style attributes The creation of Style objects (in Xaml by hand or using Blend) The creation of Control templates The Parts and State model is examined and I spend a good bit of time examining the ways in which you can significantly modify the appearance and state transition behavior of a control without changing its event handling. This tutorial, however, is far from the last word (its not even the first word!). I posted  an intro to this tutorial just a few days ago, and I’ll be posting a few videos very soon. On July 23 I’ll be doing a Webcast: Visual State Manager: Transitions and Animation , and then on August 27 we’ll go deeper with a Webcast on Creating Skinnable Custom Controls (and you can, of course, expect videos and blog entries on these topics between now and then).   All in all, templates are an exciting and (to be honest, fun) aspect of Silverlight programming, and I’m not sure we’ve done more than scratch the surface of the creative possibilities.
  • Spifftacular borders with CSS3

    #mycontent { margin-left: 10px; position: relative; width: 200px; height: 140px; padding: 10px; } #mycontent .tb, #mycontent .bb { position: absolute; height: 10px; width: 200px; } #mycontent .lb, #mycontent .rb { position: absolute; height: 140px; width: 10px; } #mycontent .tb { background-image:url('http://blogs.msdn.com/photos/template/images/8686157/original.aspx'); top: 0; left: 10px; } #mycontent .lb { background-image:url('http://blogs.msdn.com/photos/template/images/8686154/original.aspx'); top: 10px; left: 0; } #mycontent .bb { background-image:url('http://blogs.msdn.com/photos/template/images/8686156/original.aspx'); left: 10px; bottom: 0; } #mycontent .rb { background-image:url('http://blogs.msdn.com/photos/template/images/8686150/original.aspx'); top: 10px; right: 0; } #mycontent .trc, #mycontent .tlc, #mycontent .brc, #mycontent .blc { position: absolute; height: 10px; width: 10px; background-repeat: no-repeat; } #mycontent .trc { background-image:url('http://blogs.msdn.com/photos/template/images/8686160/original.aspx'); right: 0; top: 0; } #mycontent .tlc { background-image:url('http://blogs.msdn.com/photos/template/images/8686158/original.aspx'); left: 0; top: 0; } #mycontent .brc { background-image:url('http://blogs.msdn.com/photos/template/images/8686153/original.aspx'); right: 0; bottom: 0; } #mycontent .blc { background-image:url('http://blogs.msdn.com/photos/template/images/8686151/original.aspx'); left: 0; bottom: 0; } #mycontent p { margin: 10px; } #mycontentcss3 { width: 180px; height: 120px; padding: 10px; border: double #003663 10px; -webkit-border-image: url("http://blogs.msdn.com/photos/template/images/8686155/original.aspx") 10 10 10 10 repeat; border-image: url("http://blogs.msdn.com/photos/template/images/8686155/original.aspx") 10 10 10 10 repeat; } #mycontentcss3 p { margin: 0; margin-bottom: 10px; } .clear { line-height: 0; height: 0; width: 0; clear: left; } #xhtmlcss2, #xhtmlcss3,#csscss2, #csscss3 { margin-left: 10px; margin-right: 10px; max-height: 400px; overflow: auto; background-color: #333; } I've been reading a lot about CSS3 lately, where it's going and all the cool stuff I can't wait for browsers to implement. My personal favorite at the moment is the ability to easily use graphics for borders. Say I want to go crazy with my borders and create something like this: This is my spiffy box with any graphic border I want. To...
  • One Man’s Guide To Silverlight Nirvana

    Every day (honest) I am asked for a path through the learning material, even though the Getting Started page offers an explicit path. And that is not surprising. We all have our own way of learning. Here is the path that I personally tend to suggest to most Silverlight neophytes. Path of quick learning: Go to Getting started and get all the links shown here Then watch the video on the same page on getting started. Once Set UP, Writing Programs Read this tutorial on interface controls. Watch [forthcoming] this video on why I made the switch to coding with Silverlight and Blend and how powerfully they work together, and then watch watch these “How Do I” videos on Blend for Programmers: Part 1 Part2 Part3 and/or read this tutorial Data Next, it’s time to focus on this video on data and then this tutorial on creating n-tier applications and data binding. Follow that with a great video on Cross Domain issues and then read up on user controls which you can supplement with this video on keyboard input followed by this video on user controls. Styles and Templates You may then want to read my tutorial and watch my videos on Styles and Templates (to be posted in the next week or two) or check out Karen Corby’s excellent 4 part series on the subject. Freestyle After all that you can pretty much move freely among the other tutorials and videos . Best of luck
  • What do YOU want? How about some sweet swag... ?

    Hello faithful readers! What would you like to read more about on the Expression Web team blog? Tutorials? Team profiles? Weather predictions? If you want more tutorial 'how to' content, what would you like to know more about? Let us know what you want to read more about by leaving a comment on this blog post or by sending us an email. If we blog about something that you requested here, we'll send you some priceless swag...could be Expression Web-branded, Silverlight-branded, Zune-branded, or some other brand from Microsoft. (Just be sure to enter your email address when you post your comment or email so we can follow up with you!) Anna
  • What is coming soon?

    You have noticed, I’m sure, that there has been a flurry of blogging, videos and more since the release of Beta 2. That is all goodness, though it can be hard to know where to start; and the road map will differ depending on where you are in your experience with Silverlight. This is a rapidly changing environment and I’m hesitant to make promises, because things can change, but after some thought I’ve decided that it would be helpful to give you an idea of what to expect with my tutorials, videos and webcasts.  So, here is my tentative schedule through the next couple months. WebCasts Styles and Templates   Wednesday June 18 9am UTC –8 (Pacific) Deep Zoom Wednesday, July 16, 2008 9:00 Tutorials All of the tutorials are updated to Beta 2 in their  pdf form and the HTML will be updated very soon. All of the source code is already updated.  The next couple tutorials will include Styles, Templates, the Visual State Manager Graphics, Transforms, and Animation Animation In Detail The DataGrid in Detail Book Tim and I are working hard to write and publish Programming Silverlight 2 .  Our hope is to be able to provide an early look very soon. Here is one paragraph from my non-introduction (unedited and unauthorized) We’ve set out to tell you the story of Silverlight and to teach you everything you need to know to program effectively with what we believe is an amazing new technology. We have not tried to replicate the documentation nor to provide a comprehensive definition of every property, event and method of the framework. But telling the story of Silverlight is more than just picking which parts are most important; it is threading our way through a very large and complex framework in a coherent and logical way, making sense of it, and providing a guided tour through the underbrush pointing out the dangerous spots, showing the shortcuts, and warning of the dead-ends . How Do I   Videos In addition to the many videos already posted it is my plan to create videos on the following topics in the coming weeks. Styles  Templates and Visual State Manager The Visual State Manager In Depth Basic Animation in Beta 2 (with Blend) Inter-state animation In-state Animation Graphics and transforms Animating objects Data and Animation DataGrid Advanced DataGrid Popup Control Calendar Control TextBox In Depth Scroll Bars If your favorite topic is missing, just drop me a note .  Please note that some of these topics are covered already, but...
  • Beta 2 Tutorials Available Now in PDF

    I’m pleased to announce that the following tutorials are now updated for Beta 2 and available for immediate download (but only the PDF versions and the code have been updated so far, the HTML versions are not yet updated) 1 Creating Applications With Controls and Events 2 Binding Data In Silverlight 3 Filling a DataGrid using Sql, Linq and WCF 4 Instant Code Reuse: User Controls in Silverlight 5 Introducing Expression Blend For Silverlight Developers To be perfectly clear: The downloadable code is updated for Beta 2 The PDF is updated for Beta 2 The HTML is not updated to Beta 2 We’ll have the HTML updated as soon as possible. There will be a lot of information coming very fast in the next few hours and days. I recommend beginning your explorations with ScottGu’s blog post and then working your way through our new videos, tutorials, and the many other blog posts that will be appearing in the next couple days. Exciting times.
  • Beta 2 Month

    Beta 2 has been announced, and as you know from Tim’s post and Karen Corby’s , one of the big and wonderful additions to Beta 2 is a new model for skinning Silverlight controls. This is so exciting, and so important, that my plan is to make it a central (but not quite exclusive) focus for the month of June. The timing is good, because I just finished updating all the tutorials for Beta 2 (watch for them to be posted shortly after Beta 2 is available) and the one I did not update is #3 Styles and Templates. I chose not to update that one because the new model is so much better there was no point in fixing up a tutorial on typewriters when computers are about to land on your desk. The Plan During this month I’ll be releasing A new tutorial that covers Styles, Templates and the VSM in great detail How Do I videos on Styles, Templates, Visual State Manager, and tying it all together Multiple “digging deeper” blog posts and… June 18 - Round Buttons with Visual State Manager The first in my new series of Web casts unlike any I’ve tried before: much higher value, much more information, much more use of the medium. This should just be a blast. So, sign up for the June 18 WebCast and don’t forget to join SLMicroBlog to be kept up to date.
  • Creating a Project from xaml and xaml.cs files

    I posted the code for the PageSwitcher app described in a previous blog post , but to save space and to make the download faster, I didn't include anything but the code (no solution or project files). A reader wrote asking how to create a project and it is a more than fair question as the answer is not obvious until you've done it a couple times, so let's walk through that example. When you download the code, you'll receive a zip file named  PageSwitcher .zip. Unzip that and you'll have a folder named PageSwitcher,   Open a new Visual Studio project and to make this example as clear as possible, let's name it something else (myPageSwitcher) and locate it in a different directory. Open Page.xaml in your new project and note the name of the project (MyPageSwitcher) <UserControl x:Class= "MyPageSwitcher.Page" Open Page.xaml.cs and note the namespace namespace MyPageSwitcher This is the information you need to hold on to for the rest of this exercise. Ready To Go There are many ways to do this, but the easiest is to delete Page.xaml, Page.xaml.cs and App.xaml and App.xaml.cs from your new project. (Don't panic!) Next, right-click on the project and choose Add->Existing items and navigate to the downloaded files and add them all. They are now in your new project. Click on all 4 xaml files and change the name of the project in the x:Class tag. Click on all 4 .cs files and change the name of the namespace (ignore the smart tag) If you want to get rid of the smart tag, use Build->Clean. Build->Rebuild Solution. You're all set Here is your new PageSwitcher.xaml <UserControl x:Class= "MyPageSwitcher.PageSwitcher" xmlns= "http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x= "http://schemas.microsoft.com/winfx/2006/xaml" Width= "400" Height= "300" > </UserControl>   And here is your new PageSwitcher.xaml.cs using System.Windows.Controls; namespace MyPageSwitcher { public partial class PageSwitcher : UserControl { public PageSwitcher() { InitializeComponent(); if ( this .Content == null ) { this .Content = new Page(); } } public void Navigate(UserControl nextPage) { this .Content = nextPage; } } }   Don't forget, once your code compiles, you can right click on the using statements and choose Organize Usings -> Remove Unused Using  which greatly cleans up your code.
  • The Silverlight Tutorials & Book & More

    In what may be a first (at least for me) I've secured agreement with the very generous folks I work for here and at O'Reilly  to loosely join the tutorials and the chapters of our forthcoming book Programming Silverlight (co-authored by Tim Heuer, O'Reilly 2008) to create an enhanced  approach to learning tool. Let me be clear: the goal is to provide more for less ; it is not the goal to push you to buy the book; and you have my word that the tutorials will not be limited, constrained or curtailed in service to making the book somehow more worthwhile. My hope is that the book will have additional value, but the tutorials, like the videos will stand on their own. If we do it right, together they will supplement one another. Here's how it will work. Phase 1 - Tutorials and Draft Chapters During Phase 1 I will continue to publish tutorials on Silverlight.NET as well as the first drafts of chapters from Programming Silverlight for those who are curious or who would like to provide feedback (more on providing feedback to come). Note that these chapters will not have gone through technical edit nor copyedit, and will be quite rough; the final chapters will be updated for Silverlight RTW (Release To Web, as opposed to Beta), numerous rounds of technical edit, development edit and copyedit. Phase 2 - Publication and Beyond In Phase 2,  the 1st Edition of the book will be published, ideally providing cohesion, depth and detail that is simply not possible in the tutorials.  It is my plan that the tutorials will continue, supplementing the material already on line, drawing on and extending the book as Silverlight evolves, and serving as both a supplement to the existing edition and a preview of future editions. Schedule It is important to understand that the writing schedule for this book does not in any way reflect my knowledge of the timing on the release of Silverlight Beta 2 nor subsequent releases of Silverlight. Further, the current schedule is subject to change and will change. It always does. The Table of Contents will change as well.  I'll post both within a week or so.
  • Free online Training from HP

    Hewlett Packard is providing a free online training for Expression Web 1 (not version 2 of Expression Web ) by Virginia O'Connor . Even though the course is for version 1 of Expression Web, I didn't see anything in the content that can't be applied to version 2 . The training consists of four lessons from May 8 - June 13th, 2008 and their website indicates the training materials will be taken down when the course ends so be sure to sign uo and get the content before June 13th, 2008. Here's the course description from the HP website: Building websites with Expression Web This class covers the basics for creating a website with Microsoft's Expression® Web with features such as toolbars, formatting, page layouts and link creation. With this easy website creation software, you'll apply cascading style sheets, then learn how to create complex queries, how to configure the software for different browsers and how to create interactive web pages with ASP.NET 2.0 capabilities. http://h30187.www3.hp.com/sessions/overview/p/courseSessionId/16257 Anna
  • Expression newsletter overflows with Expression Web

    The April 2008 edition of the Expression newsletter was published today and contains no less than four articles directly related to Expression Web, including an interview with Eric Meyer who talks about CSS: https://www.microsoft.com/expression/news-press/newsletter/2008-04/Default.aspx The newsletter also contains articles on Deep Zoom and Silverlight 2. To subscribe to the newsletter and receive it in email (approximately every 2 months), click here . Anna
  • User Controls: Tutorial

    A quick announcement and some words of thanks. I'm pleased to say that Tutorial #5: Keyboard Input and User Controls is now available for reading on line or as a PDF. The thanks go first to Karen Corby whose amazing presentation at Mix I shamelessly stole as the basis for the tutorial (see my blog entry about Karen ) and to Silverlight Cream for such a glowing review that my ego can not resist reproducing it here Jesse Liberty posted this amazing Tutorial on User Controls ... it's like a treatise or something... wow... download the PDF and code and then run away somewhere for a weekend and try to absorb everything in this tutorial, and then I tell you... good luck! ... great material as usual Which leads me to a quick story about writing. Shortly after I wrote my first book (Teach Yourself C++ In 21 Days) Sams Teach Yourself C++ in 21 Days (4th Edition) (Sams Teach Yourself...in 21 Days) by Jesse Liberty Read more about this title... I received two emails. The first said "I have read 5 books on C++, and I always get stuck on pointers. Yours is  the first one I understand..."  The second said, "I don't know what it is you do for a living, but it isn't programming or writing, because you are incompetent at both."  I hung them both up on my wall. The Tutorials As A First Draft I am pleased to say that the tutorials are something of a first draft of the forthcoming O'Reilly book Programming Silverlight that Tim Heuer will be co-authoring, and as such offer me an opportunity to think long and hard about how to present this material and how to discuss Silverlight with various audiences. I'll be writing about this in future blog posts, but I look forward to your active feedback; my goal is to provide the information that developers need in a format that is both accessible and useful with a very high signal to noise ratio.
  • What is coming in the next few weeks?

    A couple readers of my blog and folks eager to learn more about Silverlight 2 have written to me asking for 2 things: 1. Tutorials and Videos on the specific topics of interest to them (great, keep 'em coming) and 2. Greater transparency in my schedule of what I'll be releasing Normally, I don't like to say "I'll be taping, or writing about this subject or that, because the schedule inevitably changes; for any number of reasons: other things rise on the priority list, something is about to change in the way it works so I decide to wait, someone else is about to cover that topic, etc. etc. All of that said, since I've been asked, here is my tentative list of what I hope to release in the upcoming weeks Tutorials Keyboard input events on controls User controls Expression Blend for Silverlight Programmers HDI Videos Creating Controls Dyanmically (in code vs. XAML) Styles Templates Keyboard input events Creating User Controls Expression Blend For Silverlight Programmers Recreating ScottGu's tutorial on Blend as a video I'll probably add some, and I can't guarantee the order, but that is the plan, at least right now.  My hope is to turn these out quickly to provide a good base of material. Thanks for your patience and support.   -jesse
  • Tutorial: Data From a SQL DB via WCF (using LINQ)

    My 4th tutorial Displaying SQL Database Data in a DataGrid using LINQ and WCF is now available, as is the source code and a version of the tutorial in PDF For the moment, I recommend the PDF version as the images are clearer. We're fixing up the HTML versions of all the tutorials even as I write this. This tutorial walks through Creating a LINQ query against your SQL Server database Creating a WCF service to provide access to the results of your LINQ query Binding Silverlight 2 controls against the WCF service We will, over time have a way to provide direct feedback for each tutorial, but for now, please do send email or use the forums to ask questions about anything you read in the tutorials. Thanks again,   -jese
  • How Accurate are Our Tutorials and Videos?

    A reader wrote to me today saying ( paraphrased ) ...let you know that the PDF version of the Data Binding tutorial identifies itself as tutorial #3 when it should be #2. As result of past experiences with Microsoft I tend to take such things as a sign of the  quality control that’s been applied to the content as well – and steer clear as a result! Here was my response (abridged to the parts that may be of common interest) Thanks for letting me know, we'll fix that ASAP Each tutorial was sent out to 10+ developers on the Silverlight developer team and 200+ field reps before publication. I’m pretty confident that (nearly) all technical error were caught, but remember that for none of these people is reviewing my tutorial their day job. Worse, they all know large numbers of people are seeing the tutorial, so there is the Kitty Genovese effect . In any case, I believe the tutorials are technically very accurate , and I’m supplementing them in my blog , -- but they are definitely targeted at early adopters (after all, we are in Beta 1). If you are more comfortable with a higher degree of editing, which is perfectly reasonable, you may want to wait a few months for one of the published books on Silverlight 2, such as my forthcoming  Programming Silverlight 2 which Tim Heuer and I are writing for O'Reilly , and which will be subject to O'Reilly’s usual rigorous editing standards (though I’ve never seen a book without some errata). In any case, thanks. The bottom line, for me, is that we have a responsibility to put out highly accurate information, but the reality is that we are working with a very large, complex framework that is changing rapidly. Please do let us know if you see anything you suspect is wrong (the forums are a great place for reporting such things) and we'll try to sort out whether it is operator error, an error in the tutorial or a bug in the framework. Thanks!
More Posts Next page »