Silverlight Interview Questions
Silverlight Interview Questions
What is XAML ?
Extensible Application Markup Language (XAML, pronounced zammel) is a declarative XML-based language created by Microsoft which is used to initialize structured values and objects.
-------------------------------------------------------------------------------------------------
What is the difference between WPF and Silverlight?
Silverlight uses a particular implementation of a XAML parser, with that parser being part of the Silverlight core install. In some cases, the parsing behavior differs from the parsing behavior in Windows Presentation Foundation (WPF), which also has a particular implementation.
-------------------------------------------------------------------------------------------------
Can you name built-in layout panels you have been using with Silverlight?
You are looking for Canvas, StackPanel and Grid
-------------------------------------------------------------------------------------------------
What is Storyboard?
Storyboard is a Silverlight class with controls animations with a timeline, and provides object and property targeting information for its child animations
Given XAML below
<Canvas>
<Ellipse x:Name="ellipseTest" Height="20" Width="20" Canvas.Left="0" Canvas.Top="10" />
</Canvas>
-------------------------------------------------------------------------------------------------
How can you implement following functionality: clicking left mouse on the ellipse should start ellipse movement to the right, ellipse should stop after moving 200px ?
In the answer you are looking for following steps:
1. Ellipse should have on mouse click event handler: either MouseLeftButtonUp or MouseLeftButtonDown, as following MouseLeftButtonUp=”AnimationStart”
2. Canvas should include Storyboard in the resource section :
Canvas.Resources>
<Storyboard x:Name="sbTest">
…
</Storyboard>
</Canvas.Resources>
3. Storyboard should contain double animation object:
<DoubleAnimation Storyboard.TargetProperty="(Canvas.Left)" From="0" To="200" Storyboard.TargetName=”ellipseTest” Duration="0:0:1" />
4. Storyboard.TargetProperty should be set to (Canvas.Left) and Storyboard.TargetName should be set to name of ellipse object i.e. ellipseTest
Given XAML below
<Grid x:Name="LayoutRoot" Background="White">
<Image HorizontalAlignment="Right" x:Name=”img” Width="100"/>
</Grid>
-------------------------------------------------------------------------------------------------------------
How can you set image Source dynamically from C# application to” test.png” file?
Surprisingly it is not as straight forward as it might sound, but anyone who seriously worked with Silverlight should be easily answer it.
One of the ways is: img.Source = new BitmapImage(new Uri("test.png", UriKind.Relative));
Given XAML below
<Canvas>
< Rectangle x:Name="test" Height="20" Width="20" Canvas.Left="0" Canvas.Top="10" />
</Canvas>
How can you implement following functionality: clicking left mouse on the box should start box movement to the right, but instead of having linear speed object should move rapidly when it begins, slows down, and then speeds up again before it ends.
In this question you are looking for Key-frame animations, particulary SplineDoubleKeyFrame and Bezier interpolation.
To animate with a key-frame animation:
• Add Translate Transform Property to Rectangle object
< Rectangle x:Name="test" Height="20" Width="20" Canvas.Left="0" Canvas.Top="10" >
<Rectangle.RenderTransform>
<TranslateTransform
x:Name="saTranslateTransform"
X="0" Y="0" />
</Rectangle.RenderTransform>
</ Ellipse>
• Declare the animation and specify its Duration, as you would for a From/To/By animation.
• For each target value, create a key frame of the appropriate type, set its value and KeyTime, and add it to the animation's KeyFrames collection.
• Associate the animation with a property, as you would with a From/To/By animation
• Set KeySpline property to represent accelerate – slow down behaviour
<DoubleAnimationUsingKeyFrames Storyboard.TargetName="saTranslateTransform " Storyboard.TargetProperty="X" Duration="0:0:2"">
<SplineDoubleKeyFrame Value="200" KeyTime="0:0:2" KeySpline=" 0.0,1.0 1.0,0.0 " />
</DoubleAnimationUsingKeyFrames>
-------------------------------------------------------------------------------------------------
1) How to perform Event handling in silver light?.
Silverlight 1.0 uses JavaScript, while Silverlight 2.0 uses C# (managed code) for event handling. We will be describing the event model for Silverlight 2.0.
The event handlers are defined in the code-behind file that backs the XAML definition of your User Interface (UI), namely mypage.xaml.cs.
The Silverlight Event Mode
In Silverlight, there are two event cases:
Input events
Non-input events.
Input Events: The browser that hosts the Silverlight plug-in handles initial input stimulus for the input events. This is because Silverlight works within the plug-in architecture of the hosting browser. From the browser, the event is sent to the Silverlight plug-in.
Then, it is raised as an event in the Silverlight Object Model.
Non-input Events: They report a state change to a particular object, for example, the state change events that report asynchronous download state or progress of actions initiated by Web Client. Some non-input events provide lifetime information of objects at a framework level.
For example the FrameworkElement.Loaded event
Some events, such as OnError, can only be handled by the Silverlight plug-in instance and exist within the HTML Document Object Model (DOM). These events need to be continually exposed and possibly handled by any script working with the plug-in instance in the DOM. Therefore; these events are not passed to the managed programming model.
-------------------------------------------------------------------------------------------------------------
Can we add the reference of a Class library project in Silverlight application project?
No, You can't add the reference of a Class library inside the Silverlight application project. You can only add the reference of another Silverlight application project inside a Silverlight application project.
However, you can add the reference of a Web Service or WCF services.
-------------------------------------------------------------------------------------------------------------
What is Silverlight.js file?
Silverlight.js is a helper file which enables Web sites to create advanced Silverlight installation and instantiation experiences.
-------------------------------------------------------------------------------------------------------------
What is the .xap file inside ClientBin folder of consuming Silverlight application?
Following is a very good FAQ about the .xap posted on asp.net page.
What does XAP mean?
XAP (pronounced ZAP) is the file extension for a Silverlight-based application package (.xap). This file contains the compressed assemblies and resources of a Silverlight 2 application.
What is a .xap file?
A .xap file is a Silverlight-based application package (.xap) that is generated when the Silverlight project is built.
Why is XAP important?
Tools, such as Visual Studio 2008 with the Microsoft Silverlight Tools Beta 2 for Visual Studio 2008, allow you to create Silverlight applications that are heavily client based using managed code. You can use managed code, such as C# or Visual Basic, and benefit by using the tools that you are used to working with.
How does XAP work?
Once you have created the .xap file (explained below), the Silverlight 2 plug-in downloads the file and runs it in a separate work space.
How do I use a .xap file?
A .xap file is used to contain and transfer the assemblies and resources of a managed code application. This managed code application must be run within the Silverlight 2 browser plug-in.
-------------------------------------------------------------------------------------------------------------
What is the use of ClientBin folder?
ClientBin folder is used to place the .xap file of Silverlight application. You can keep this anywhere in your web application but this is the default that is used by the Silverlight.
-------------------------------------------------------------------------------------------------------------
What is the parent xaml tag of Silverlight page?
UserControl is the parent xaml tag of the Silverlight page. All other tags are placed under UserControl tag.
<UserControl x:Class="SilverlightApplication2.MainPage"
xmlns=http://schemas.microsoft.com/winfx/2006/xaml/presentation
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Width="400" Height="300"><Grid x:Name="LayoutRoot" Background="White"></Grid></UserControl>
-------------------------------------------------------------------------------------------------------------
How to change the default page of the Silverlight application?
To change the default page of Silverlight application, you need to set the RootVisual property inside the Application_Startup even of App.xaml file.
private void Application_Startup(object sender, StartupEventArgs e)
{this.RootVisual = new YourPage();}
-------------------------------------------------------------------------------------------------------------
When you create a new project in Silverlight through Visual Studio, how many xaml files are created and what are the uses of those files?
When we create a Silverlight application from Visual Studio, two (2) xaml files are created into the Silverlight project.
They are:
1. App.xaml - App.xaml is a file used to declare shared resources like brushes, various style objects etc. and to handle the global application level event (this is almost similar to global.asax file in asp.net application). By default following events are created in the App.xaml.cs file.
Application_Startup
Application_Exit
Application_UnhandledException
ReportErrorToDOM
2. MainPage.xaml or Page.xaml - This page is the default page of the Silverlight application and when the silverlight application runs this becomes the default page to appear (this page is like the default.aspx page of asp.net application)
------------------------------------------------------------------------------------------------------------
Which programming language can be used to write the backend of the Silverlight application?
We can either use Visual C# or Visual Basic to code the backend of the silverlight application. Here backend means the code behind files for the Sivlerlight pages.
-------------------------------------------------------------------------------------------------------------
Which language is used to design the layout in Silverlight?
To design the layout of the Silverlight application, XAML language is used.
Extensible Application Markup Language (XAML, pronounced zammel [ˈzæmɫ̩]) is a declarative XML-based language created by Microsoft which is used as a user interface markup language to define UI elements, data binding, eventing, and other features.
-------------------------------------------------------------------------------------------------------------
How to set Silverlight contents width as 100%?
Generally you can't set the UserControl width in % like 100% so that the Silverlight contents can spread in the full screen.
To get the 100% width of the screen you can set width="auto" and height="auto".
-------------------------------------------------------------------------------------------------------------
Can you provide a list of Layout Management Panels and when you will use them?Canvas Panel:
use a canvas for simple layouts and when there is no need to resize panel. Controls can overlapped each other when resizing the panel.
Stack Panel:
use this for grouping controls in a stack (horizontal/vertical). Controls do not overlapped.
Grid Panel:
most flexible, multi row/columns layouts. Similar to a HTML table
-------------------------------------------------------------------------------------------------------------
How can style elements be applied? (similar to a CSS file/skins)
Styles elements are supported in the form of application resources. An app.xaml file can be created containing an application resource Xml construct. The target type for each style is set to the control on which the style needs to be applied.
App.xaml:
<Application.Resource>
<Style x:Key="MyBorder" TargetType="Border">
<setter property="width" value="5">
</style>
Page.xaml:
<Border Style="{StaticResource MyBorder}">
..
</Border>
-------------------------------------------------------------------------------------------------------------
What is Silverlight?
Silverlight is a cross-browser, cross-platform plug-in for delivering the next generation of Microsoft .NET–based media experiences and rich interactive applications for the Web.
-------------------------------------------------------------------------------------------------------------
Does silverlight web application work with all browsers ?
Yes, A web application developed by silverlight technology can work with any browser
-------------------------------------------------------------------------------------------------------------
Is Silverlight plug-in free?
Yes, Microsoft will make the Silverlight browser plug-in freely available for all supported platforms.
-------------------------------------------------------------------------------------------------------------
Is Silverlight the official name for "WPF/E"?
Yes. Silverlight was formerly code-named "WPF/E."
-------------------------------------------------------------------------------------------------------------
What is the long-term goal or vision for Silverlight?
Silverlight is a cross-browser, cross-platform plug-in for delivering the next generation of .NET-based media experiences and rich interactive applications (RIAs) for the Web. Silverlight offers a flexible programming model that supports AJAX, Visual Basic .NET, C#, Python, and Ruby and integrates with existing Web applications. Silverlight media capabilities include fast, cost-effective delivery of high-quality audio and video to all major browsers including Mozilla Firefox, Apple Safari, and Windows Internet Explorer running on Mac OS or Microsoft Windows. By using Microsoft Expression Studio and Microsoft Visual Studio, designers and developers can collaborate more effectively using the skills they have today to light up the Web of tomorrow. -------------------------------------------------------------------------------------------------------------
What are the main features and benefits of Silverlight?
Key benefits of Silverlight include:
1. Compelling cross-platform user experiences
Deliver media experiences and rich interactive applications (RIA) for the Web that incorporate video, animation, interactivity, and stunning user interfaces (UIs).
- Seamless, fast installation for users, thanks to a small, on-demand, easy-to-install plug-in that is under 2 megabyte (MB) in size and works with all leading browsers.
- Consistent experiences on Windows and on Mac OS without any additional installation requirements.
- Create richer, more compelling Web experiences that take greater advantage of the client for increased performance.
- Stunning vector-based graphics, media, text, animation, and overlays enable seamless integration of graphics and effects into any existing Web application.
- Enhance existing standards/AJAX-based applications with richer graphics and media and improve their performance and capabilities by using Silverlight.
2. Flexible Programming Model with Collaboration Tools
Based on the Microsoft .NET Framework, Silverlight enables developers and designers to easily use existing skills and tools to deliver media experiences and RIAs for the Web.
- Choice of programming languages such as AJAX, Visual Basic .NET, C#, Python, and Ruby offers developers and designers the flexibility to use their existing skills without the need to learn a new language.
- Simple integration with existing Web technologies and assets means Silverlight works with any back-end Web platform or technology. No "rip and replace" required. Silverlight integrates with your existing infrastructure and applications, including Apache and PHP, as well as with JavaScript and XHTML on the client.
- Role-specific tools for both designers and developers that take advantage of Web standards and the breadth of the Microsoft .NET-connected software features.
- Designers will like that Expression Studio creates interactive UIs and media rich experiences, prepares media for encoding and distribution, and creates World Wide Web Consortium (W3C) standards-compliant sites by using modern XHTML, XML, XSLT, CSS, and Microsoft ASP.NET.
- Developers will use Visual Studio for development of client and server code with full Microsoft IntelliSense, powerful debugging, rich language support, and more.
- Consistent presentation model using XAML, the declarative presentation language used in Windows Vista applications. Controls, visual designs, media, and other elements can be presented with full design fidelity in both Silverlight and Windows-based applications.
- Dramatically improved performance for AJAX-enabled Web sites with the power, performance, and flexibility of Silverlight and .NET-connected software
3. High-quality media, low-cost delivery
- Unified media format scales from high definition (HD) to mobile with Windows Media Video (WMV), the Microsoft implementation of the Society of Motion Picture and Television Engineers (SMPTE) VC-1 video standard, as well as support for Windows Media Audio (WMA) and MP3 audio.
- Add vector-based graphics and overlays to media with support for integration of graphics that scale to any size and broadcast-style overlays for tickers and closed captioning.
- Flexible ad-insertion solutions with video and animation including the ability to deliver fluid, broadcast-style video or animated advertisements without any loss of visual fidelity or motion quality.
- Lower-cost media streaming with Emmy Award–winning Windows Media technologies that can significantly lower the cost of streaming delivery with the flexibility to work with existing Windows Media streaming deployments. Even further cost reductions are possible with the upcoming Microsoft Internet Information Services (IIS) Media Pack for Windows Server Code Name “Longhorn.”
- Broad ecosystem of media tools, servers, and solutions compatible with the Windows Media operating system.
- Powerful encoding tools for live and on-demand publishing of media experiences with Expression Media Encoder, including hardware-accelerated encoding of WMV and VC-1 at up to 15 times the performance of software alone when paired with a Tarari Encoder Accelerator board (based on Tarari internal tests).
4. Connected to data, servers, and services
- Create mash-ups by incorporating data and services from anywhere on the Web by using Silverlight support for LINQ and LINQ-to-XML. Access data with common protocols like JSON, RSS, POX, and REST.
- Increase discoverability of RIA content that can be indexed and searched, thanks to the Silverlight text-based XAML format.
- Rapidly scale Silverlight applications by using SilverlightTM Streaming by Windows Live
-------------------------------------------------------------------------------------------------------------
Is the re-released Silverlight Beta different from "WPF/E" February 2007 Customer Technology Preview (CTP)?
Yes, the Beta is a new release. Read more about what is new in the Beta in the What's New in the Silverlight February 2007 CTP whitepaper.
-------------------------------------------------------------------------------------------------------------
How do Silverlight 1.0 Beta and Silverlight 1.1 Alpha differ?
Silverlight 1.1 Alpha builds on the Silverlight 1.0 Beta to add managed code programmability and a managed object model.
-------------------------------------------------------------------------------------------------------------
Can I deploy Silverlight-based applications with the CTP?
Yes. Although Silverlight Beta releases are for evaluation and testing purposes, it has a go-live license enabling commercial deployment. Note that although commercial deployments are enabled, the software is still in Beta and the support is thus limited.
-------------------------------------------------------------------------------------------------------------
Is there an expiration date for the Beta?
Yes, the Beta expires on August 1, 2007. An update will be available prior to the expiration. Upon expiration, the client will prompt you with an expiration notice and ask you to upgrade. Web developers will be able to offer the update programmatically, making the experience easy for their users.
-------------------------------------------------------------------------------------------------------------
Is Microsoft on schedule to ship Silverlight in the first half of this year?
Yes.
-------------------------------------------------------------------------------------------------------------
What features are available in the Silverlight 1.0 Beta?
Silverlight 1.0 Beta includes:
- Enhanced Web audio and video streaming and playback with industry-leading Windows Media technologies tapping into the existing ecosystem of tools, servers, and solutions, as well as new features for interactive video, overlays, ad presentation, and more.
- A cross-platform, cross-browser plug-in with fast and easy install (Beta plug-in is approximately 2 MB) for Mac OS and Windows operating systems.
- Easy integration with client-based and server-based AJAX solutions including ASP.NET AJAX. This empowers developers to use standards-based Web techniques to enhance AJAX applications with Silverlight.
- Lower-cost deployment and distribution of streamed audio and video when compared to other comparable solutions (up to 50% less cost reported by content delivery networks (CDNs).
- Broad support of tools for designers, developers, and video professionals, that tap into Web standards plus a breadth of Microsoft application platform features:
For designers, Expression Design and Expression Blend 2 May Preview for creating XAML-based rich interfaces. Expression Web for Web-standards-based design using XHTML, XML, XSLT, and ASP.NET for building compelling modern Web sites.
- For video professionals, Expression Media, a full-featured digital asset management and video encoding solution for the enhancement, compression, and publishing of video for Silverlight.
- For developers, Visual Studio–based support for Web standards development including ASP.NET AJAX with full IntelliSense editing for client script and server code.
------------------------------------------------------------------------------------------------------------
What features are available in the Silverlight 1.1 Alpha?
The Silverlight 1.1 Alpha includes all the features available in Silverlight 1.0 Beta plus a number of new features focused primarily on improving the developer productivity and power, including:
- Managed code support
- Support for dynamic languages including managed Microsoft JScript and Python
- Rich UI control model based on WPF
- Improved networking stack with support for REST, RSS, JSON, and POX
- Enhanced, two-way HTML/AJAX bridge
- Comprehensive and consistent base class library
- Support for LINQ (LINQ to Objects, LINQ to XML)
------------------------------------------------------------------------------------------------------------
Which platforms and browsers will Silverlight support?
Silverlight will support all major browsers on both Mac OS X and on Windows. Particular care is being taken to account for differences in platform and browser capabilities to ensure a consistent experience including experiences on FireFox, Safari, and Internet Explorer.
-------------------------------------------------------------------------------------------------------------
What Macintosh OS versions and hardware will be supported?
Macintosh OS X 10.4.8 or later will be supported for both Power PC–based and Intel-based hardware via a Universal Binary.
-------------------------------------------------------------------------------------------------------------
How will Silverlight be distributed by Microsoft?
Microsoft designed Silverlight to fit a broad range of uses that require reach and a compelling user experience. Many Microsoft projects will be using Silverlight for delivering richer user experiences and applications for the Web.
------------------------------------------------------------------------------------------------------------
Is the installation experience of the Beta representative of what customers will see when released?
The installation experience for the Beta is close to the final installation experience. The final release will be even more refined.
------------------------------------------------------------------------------------------------------------
Will I need more memory, a faster processor, or a better Graphics Processing Unit (GPU)?
Microsoft designed Silverlight with the ability to deliver high-fidelity experiences on the broadest set of system configurations. Some features, such as HD video, may benefit from newer personal computers. Final system requirements will be available at release.
-------------------------------------------------------------------------------------------------------------
Is Microsoft considering support for additional operating systems?
Microsoft is gathering feedback from customers like you on Silverlight and to help determine which platforms should be supported in the future.
-------------------------------------------------------------------------------------------------------------
Which devices will be supported?
Device platforms are being considered based on customer feedback.
-------------------------------------------------------------------------------------------------------------
Where can I go to install Silverlight?
Go to the Silverlight installationpage to start.
-------------------------------------------------------------------------------------------------------------
How do I ensure that the installation of Silverlight will be successful?
For most customers, these steps help:
- • Before you download Silverlight, read the system requirements for Macintosh computers or the system requirements for Windows-based computers to ensure your system is compatible.
- • Make sure you uninstall any previous version of Silverlight, formerly code-named "WPF/E."
- If you are running Firefox or Safari, restart your browser.
-------------------------------------------------------------------------------------------------------------
I have still have problems with installation, where do I go for help?
Silverlight is still in beta. However, many people get answers to their questions about installation through the Silverlight Installation and Setup forum.
-------------------------------------------------------------------------------------------------------------
I installed Silverlight successfully and I still have problems viewing web sites with Silverlight, where do I go for help?
The installation and setup forum can address those questions quite efficiently. For specific issues with this site you can also send an e-mail message to: slbug@microsoft.com.
-------------------------------------------------------------------------------------------------------------
How do I uninstall Silverlight?
Follow the instructions on the Uninstalling previous versions of Silverlight.
-------------------------------------------------------------------------------------------------------------
Questions related to silverlight Development
Can I redistribute the Silverlight 1.0 Beta release?
Yes, the Silverlight 1.0 Beta release offers a Go-Live license. Hence, you can begin building applications that target Silverlight immediately. Silverlight 1.1 Alpha does not offer a Go-Live license at this time.
-------------------------------------------------------------------------------------------------------------
Can I redistribute the Silverlight 1.1 Alpha release?
No, Silverlight 1.1 Alpha does not offer a Go-Live license at this time.
-------------------------------------------------------------------------------------------------------------
Where can I find Silverlight and associated Software Development Kits (SDKs) for download?
Silverlight betas and released versions can be found on the Microsoft Silverlight site. Developer and designer resources such as the SDK and CTP releases can be found at the MSDN Silverlight site. Another great resource for getting started with Silverlight is the newly launched Silverlight community site.
-------------------------------------------------------------------------------------------------------------
How can I build experiences and applications with Silverlight?
Silverlight development tools include role-specific productivity tools for both designers and developers:
- Expression Studio empowers designers to create interactive UI and media-rich experiences, prepare media for encoding and distribution, and create W3C standards-compliant sites using modern XHTML, XML, XSLT, CSS, and ASP.NET. Expression Design includes support for exporting XAML for Silverlight. At MIX 07, Microsoft released Expression Blend 2 May Preview and Expression Media Encoder Preview to enable designers to build media experiences and RIAs.
- Visual Studio empowers developers to develop client and server code using full IntelliSense, powerful debugging, rich language support, and more.
By using Expression Studio and Visual Studio, designers and developers can collaborate more effectively using the skills they have today. Additionally, Silverlight supports a consistent subset of XAML (eXtensible Application Markup Language) for declarative programming, the same format found in .NET 3.0. Because XAML is toolable, there is always the potential for third-parties to provide additional XAML-based Silverlight tools in the future.
-------------------------------------------------------------------------------------------------------------
Are the features of the Macintosh and Windows releases of Silverlight fully compatible?
Yes.
-------------------------------------------------------------------------------------------------------------
When would a customer use Silverlight instead of ASP.NET AJAX?
Silverlight integrates with existing Web applications, including ASP.NET AJAX applications. Thus, ASP.NET AJAX and Silverlight are designed to be complementary technologies. In the broader sense, Silverlight can talk to any AJAX application, both client-side and server-side. In addition, ASP.NET AJAX can be used to control Silverlight-based visualization of data or delivery of rich experiences. Examples might include mapping applications or video playback with rich presentation.
ASP.NET AJAX and Silverlight at final release will also benefit from being a fully supported technology from Microsoft with the benefits of technical support around the clock and the breadth support of the Microsoft development community. AJAX is a fundamental technology supported in Silverlight and now, in ASP.NET.
Customers can enhance existing ASP.NET or ASP.NET AJAX applications by using Silverlight’s media experiences and RIAs.
-------------------------------------------------------------------------------------------------------------
What is the ASP.NET Futures (May 2007) release?
The Microsoft ASP.NET Futures May 2007 (“Futures”) release contains an early developer preview of features providing a wide range of new functionality for both ASP.NET and Silverlight. The Futures release includes early experimental versions of features currently under consideration for future versions of ASP.NET and the .NET Framework. The Futures releases assume prior knowledge of the core features of ASP.NET, including the previous ASP.NET AJAX Futures January CTP.
-------------------------------------------------------------------------------------------------------------
How does Silverlight make the Microsoft development system better?
Silverlight is a cross-browser, cross-platform plug-in for delivering the next generation of media experiences and rich interactive applications (RIAs) for the Web. Examples include:
- For ASP.NET-based Web applications, Silverlight provides a rich UI front-end that, with a consistent programming model, adds support for richer interactivity, media, and audio.
- For Microsoft SharePoint–based content, Silverlight offers the ability to create rich Web parts.
- For Windows Live services, Silverlight offers the ability to consume services and APIs more effectively.
-------------------------------------------------------------------------------------------------------------
When would a customer use Silverlight instead of Windows Presentation Foundation (WPF)? Is Silverlight more appropriate for certain types of applications?
WPF and Silverlight are complementary platforms, based on XAML for presentation:
- WPF provides a unified programming model for building the best Windows Vista era of smart-client user experiences that incorporate UI, 3D, media, and documents.
- Silverlight is a cross-browser, cross-platform plug-in for delivering the next generation of media experiences and RIAs for the Web by using a consistent subset of WPF features and the flexibility of AJAX for programmability.
Thus, both WPF and Silverlight enable developers and designers to develop visually stunning user experiences, but they are designed for different scenarios.
-------------------------------------------------------------------------------------------------------------
What are the key features of the ASP.NET Futures May 2007 release?
ASP.NET Futures includes a number of new, innovative solutions that help developers become more productive and enables them to create better user experiences for their customers. Silverlight-related features include:
- Silverlight Controls for ASP.NET. Enables the ability to include media (video, audio) vector graphics and animations by using familiar and powerful ASP.NET server controls
- ASP.NET Application Services. Offers new application services to make AJAX and Silverlight Web applications more discoverable from search engines and easily searchable from within the site. Additional services help you gather and analyze data about client errors.
-------------------------------------------------------------------------------------------------------------
Where can I go to connect with other Silverlight developers to ask questions?
For Silverlight-related forums, blogs, and community resources for the CTP, visit the Silverlight Support and Community page.
-------------------------------------------------------------------------------------------------------------
Questions related to Media (audio and video)
What is the relationship between Silverlight and Windows Media technologies?
Silverlight builds on top of Windows Media in a fashion similar to the Xbox XDK (Xbox Development Kit), enabling developers and designers to collaborate in building media experiences and RIAs. Silverlight is released by the Server and Tools Division at Microsoft as a part of the .NET Framework.
-------------------------------------------------------------------------------------------------------------
Is Silverlight a new media player?
No. Silverlight is a cross-browser, cross-platform plug-in for delivering media experiences and RIAs. It is not a desktop application or stand-alone media player.
-------------------------------------------------------------------------------------------------------------
What is the relationship between Silverlight and Windows Media Player?
The Silverlight browser plug-in is a separate component, independent of Windows Media Player. Silverlight is designed for delivery of cross-platform, cross-browser media experiences and rich interactive applications (RIAs) inside a Web browser combining audio, video, animation, overlays, and more. Windows Media Player delivers a breadth of local playback and user focused experiences, while also offering support for application and Web page embedding.
-------------------------------------------------------------------------------------------------------------
Do I need to have the latest version of Windows Media Player installed?
No. Silverlight is completely independent and when installed is less than 2 MB in size.
-------------------------------------------------------------------------------------------------------------
What audio or video formats are supported in Silverlight?
Silverlight supports Windows Media Audio and Video (WMA, WMV7–9) and VC-1, as well as MP3 audio. Additional formats may be available by the final release based on customer feedback.
-------------------------------------------------------------------------------------------------------------
Will Silverlight support all the codecs Windows Media Player supports?
Since Silverlight is a lightweight cross-platform technology, it only carries the most common codecs that are needed for Web playback. However, we are gathering information from customers about the needed codecs and can update Silverlight when necessary.
-------------------------------------------------------------------------------------------------------------
What is SMPTE VC-1?
VC-1 is an industry-standard video format, recognized by the Society of Motion Picture and Television Engineers (SMPTE), and most notably ships in all HD-DVD and Blu-ray Disc–certified electronics, hardware, and tools. Windows Media Video 9 (WMV-9) is the Microsoft implementation of the SMPTE VC-1 standard video codec. Microsoft initiated development of the standard with the release of WMV-9 to SMPTE.
-------------------------------------------------------------------------------------------------------------
Will Silverlight support HD quality?
Yes, Silverlight supports 720p, HD quality with considerable performance benefits over other solutions. Performance is dependent upon the central processing unit (CPU) capabilities of your computer and configurations. Generally, in testing, a 3-gigahertz (GHz) CPU and/or dual-core support greatly benefit the HD playback experience.
-------------------------------------------------------------------------------------------------------------
Will Silverlight work with my new or existing Windows Media services platform for streaming?
Yes, in the final release. The CTP supports progressive download and playback from any server. In its final release, Silverlight will take advantage of Windows Server features for streaming.
-------------------------------------------------------------------------------------------------------------
Will Silverlight support live streaming events as well as downloading media?
Yes, in the final release. The February CTP is optimized for progressive "download and play" scenarios to test the platform.
------------------------------------------------------------------------------------------------------------
Does Silverlight support MPEG4 and H.264 video, or Advanced Audio Coding (AAC) audio, or Flash video?
No. However, content from many of these formats can be transcoded into formats that are supported by Silverlight, such as by an automated server function (many available third-party solutions support this workflow), and then incorporated into a Silverlight-based application.
Will Silverlight support the full range of APIs offered by the Windows Media Player ActiveX control today?
We are actively speaking to customers and partners about their needs.
-------------------------------------------------------------------------------------------------------------
Will Silverlight support digital rights management?
For content providers, Silverlight will support digital rights management (DRM) built on the recently announced Microsoft PlayReady content access technology on Windows-based computers and Macintosh computers.
------------------------------------------------------------------------------------------------------------
Will Silverlight-based applications run in Media Center? What about Media Center Extender?
Silverlight-based applications can run in Media Center but may have rendering issues on Media Center Extenders. Applications that are implemented using the Media Center SDK will provide a better experience. The engineering team is actively evaluating customer requirements for a variety of scenarios moving forward.
-------------------------------------------------------------------------------------------------------------
Are there any new tools for creating and publishing media content with Silverlight?
Yes. The recently announced Expression Media Encoder, a feature of Expression Media, will support live and on-demand encoding and template-based publishing of Silverlight-based experiences and applications. In addition, Silverlight works with the broad range of Windows Media encoding tools and utilities available today. Additional details will be made available shortly.
-------------------------------------------------------------------------------------------------------------
Questions related to Server and services
Will Silverlight-based applications and content run on any Web Server? What are the benefits to running it on servers running Windows?
Silverlight works with any web server just like HTML. Video and audio content can also be progressively downloaded and played back from any Web server platform. Benefits of Windows server-based distribution of Silverlight applications include Windows Media Services with Fast Stream (instant playback) and Fast reconnect technologies, lower distribution costs (streaming users only download what they watch), and tap into the full Windows server ecosystem of platform components and partner solutions. Those benefits will be enhanced in the future version of Windows Server (code name “Longhorn”) and with Internet Information Server 7 (IIS).
-------------------------------------------------------------------------------------------------------------
What features are missing from Silverlight presentation markup that will be supported in WPF (Windows Presentation Foundation)?
Some high-end Windows specific features of WPF, such as real 3D, hardware-based video acceleration, and full document support, will not be supported in Silverlight. This is by design in order to serve Silverlight’s cross-browser, cross-platform reach scenario that demands a light weight plug-in. That being said, Silverlight will offer a uniform runtime that can render identical experiences across browsers on both Mac OS and Windows.
-------------------------------------------------------------------------------------------------------------
When would a customer use Silverlight versus ASP.NET AJAX?
Silverlight integrates with existing Web applications, including ASP.NET AJAX applications. Consequently, ASP.NET AJAX and Silverlight are designed to be complementary technologies. In the broader sense, Silverlight can communicate with any AJAX application, both client and server-side. ASP.NET AJAX can additionally be used to control Silverlight-based visualization of data or delivery of rich experiences. Examples might include mapping applications or video playback with rich presentation.
ASP.NET AJAX and Silverlight at final release will also benefit from being a fully supported technology from Microsoft, with the benefits of 24-hour technical support and the breadth of support of the Microsoft development community. AJAX is a fundamental technology supported in Silverlight and now by ASP.NET.
You can enhance existing ASP.NET or ASP.NET AJAX applications by using the Silverlight media experiences and rich interactive applications.
-------------------------------------------------------------------------------------------------------------
Is Microsoft making new server investments for creation and delivery of digital media?
Windows Server “Longhorn” raises the bar significantly on security, reliability, and robustness, and it is already considered to have excellent live and streaming delivery. New investments are being made in two key areas: IIS 7.0 and Windows Media Services.
- Windows Media Services (WMS): Under development for Windows Server “Longhorn” to provide advanced streaming media support, enabling significantly more scalable live and on-demand broadcasts that build on the industry-leading availability, cost-efficiency, and uptime offered by Microsoft Windows Server 2003 today. Silverlight joins the list of client platforms that can connect to and present WMS streamed audio and video as an integrated part of media-enabled applications for the Web, whether you are building a simple cross-platform, browser-based media experience or a rich interactive application (RIA) for the Web.
- IIS 7.0: For customers who prefer to use IIS for progressive download of media-enabled applications and experiences, Microsoft is announcing the IIS 7.0 Media Pack. The IIS 7.0 Media Pack reduces the cost of delivering downloaded content, such as media, thanks to bit-rate throttling. The IIS 7.0 Media Pack will be a free download for customers of Windows Server “Longhorn” later this year.
------------------------------------------------------------------------------------------------------------
Questions related to Silverlight Globalization and localization
Is Silverlight supported on various locales?
Silverlight installs on localized versions of Macintosh computers and Windows. At this time, the installation is available in an international English format. Final releases will render international text (using double-byte characters) and support the full 64K Unicode character set. Silverlight uses simple input mechanism that treats all the languages in the same way.
-------------------------------------------------------------------------------------------------------------
What are the different ways to display text with Silverlight?
Silverlight supports displaying static preformatted text that is comprised out of glyph elements and also dynamic text that uses TextBlock. With glyphs, one needs to position the characters individually while TextBlock supports simple layout.
-------------------------------------------------------------------------------------------------------------
What kinds of fonts are supported with Silverlight?
Beyond standard and western fonts, Silverlight also supports East Asian characters, double-byte characters, and can work with any East Asian font or Middle Eastern font by using the glyphs element and a supporting TrueType font file that supports the requested glyph.
------------------------------------------------------------------------------------------------------------
Questions related to Silverlight Streaming
What is Microsoft® SilverlightTM Streaming by Windows LiveTM?
Microsoft® SilverlightTM Streaming by Windows LiveTM offers a free cloud-based hosting and streaming solution for quickly delivering high-quality, high-scale, cross-platform, cross-browser, media-enabled RIAs.
-------------------------------------------------------------------------------------------------------------
How much does SilverlightTM Streaming cost?
While the product is in Beta, hosting is free of charge. Up to 4 GB of data and streaming is free of charge up to 700 kilobit/s. At the conclusion of the Beta program, the developer can chose to enable Microsoft-sponsored advertising in the application for continued free use of the service to or subscribe to a pay-for-use service that is free of advertisements.
-------------------------------------------------------------------------------------------------------------
How much is the pay-for-use service if I chose not to use Microsoft-sponsored advertising?
We’re not prepared to discuss the final pricing of the nonadvertising-based product at this time except to say that it will be extremely cost competitive. The advertising-based product will continue to be free in perpetuity.
------------------------------------------------------------------------------------------------------------
How much storage do I get and what is the bit-rate?
A user receives 4 GB of free storage for SilverlightTM Streaming applications. Each media element in a SilverlightTM Streaming application cannot exceed a 10-minute uninterrupted video stream at 300 kilobit/s. The peak outbound bit rate for SilverlightTM Streaming is 700 kilobit/s. As the limit is set based on byte size instead of duration, by using the full bandwidth of 700 kilobit/s, the video will be truncated to approximately 4 minutes. Customers requiring additional capabilities are encouraged to contact aWindows Media Streaming Hosting Provider.
------------------------------------------------------------------------------------------------------------
What video encoding formats are supported?
The designer or developer is free to use any encoding format for their video supported by the Windows Media Video codec. This includes Variable Bit Rate (VBR) encoding for DVD-quality video and the use of the VC-1 codec for high-definition content. However, for HD content, be aware that the maximum output rate from the service is 700 kilobit/s, which means the client will not receive real-time delivery of HD video.
------------------------------------------------------------------------------------------------------------
What is the difference between SilverlightTM Streaming and other video sharing services?
SilverlightTM Streaming is focused on developers who want to build their own media-rich applications or Web sites. Unlike other video sharing services, there are no third-party branding requirements for the use of SilverlightTM Streaming, and the developer is in full control over their rich media experience within the context of their Web site. This includes items that are not presently supported on other sites such as 16:9 aspect ratio video, DVD-quality video, stereo audio, and customized UI (XAML).
------------------------------------------------------------------------------------------------------------
Does SilverlightTM Streaming replace other video and file sharing services?
This service does not replace other video or file sharing services. SilverlightTM Streaming is intended to allow developers the power and flexibility to build such services themselves, and more. Customers requiring additional capabilities are encouraged to contact a Windows Media Streaming Hosting Provider.
-------------------------------------------------------------------------------------------------------------
What steps are being taken to ensure copyrighted content or illegal material is not uploaded?
The media owners as well as the Silverlight developers rendering content in their third-party Web sites are responsible for respecting the copyright of the content they expose. Microsoft reserves the right to remove from our servers any copyrighted content brought to our attention. The front page of our service has a Report Abuse button and the free-of-charge XAML templates that we provide include a similar button.
-------------------------------------------------------------------------------------------------------------
Can I string together longer clips made of 10-minute files in a playlist?
Yes, so long as the total size of your Silverlight application content does not exceed the 4-GB storage limits of this free service.
-------------------------------------------------------------------------------------------------------------
What scalability does this system deliver? What if I have a large number of visitors to my Web site at the same time?
This service uses the Microsoft content delivery network specifically optimized for long-form video content. It has a provisioned global aggregate data rate in excess of 1 terabit/second.
-------------------------------------------------------------------------------------------------------------
Does this solution compete with content delivery networks (CDNs)?
No, this service uses the Microsoft CDN for the low latency delivery of media, and it does not compete with CDNs because it is specifically optimized for use with Silverlight RIAs. Customers requiring additional capabilities including guaranteed service levels are encouraged to contact a Windows Media Streaming Hosting Provider.
-------------------------------------------------------------------------------------------------------------
Why is this service branded with Windows LiveTM?
This service is part of the Windows LiveTM Platform.
-------------------------------------------------------------------------------------------------------------
It’s free—what’s the catch?
There is no catch. This is a new offering designed to accelerate the development of the next generation of media rich applications.
-------------------------------------------------------------------------------------------------------------
Can I tap into other Windows LiveTM services?
Yes, customers are able to use Windows Live IDTM and other Windows Live APIs today and in the future. Silverlight provides a great platform to consume these services.
-------------------------------------------------------------------------------------------------------------
Do you support digital rights management to protect my videos?
In the future, SilverlightTM Streaming will provide support for DRM-encoded video as an optional paid turnkey offering.
-------------------------------------------------------------------------------------------------------------
What applications will Microsoft provide to make hosting easy?
Microsoft is building a simple uploading tool and working to add publishing support directly to SilverlightTM Streaming via ExpressionTM Media Encoder, a feature of ExpressionTM Media. In addition, third-party companies are adding support to their own applications for SilverlightTM Streaming.
-------------------------------------------------------------------------------------------------------------
How is my content secured from unauthorized access?
You will have to be signed into the SilverlightTM Streaming service to manage your account and your Silverlight applications. Your SilverlightTM Streaming ID and secret key, associated to your Windows Live ID, will authenticate you as the unique and legitimate owner of the applications and content you upload to the service. You will also need this information to manage your Silverlight applications using the API. The SilverlightTM Streaming ID is public. However, the secret key should be kept confidential.
-------------------------------------------------------------------------------------------------------------
How do I get started?
To sign up for your free account, visit streaming.live.com. Anyone with a Windows Live ID can participate.
-------------------------------------------------------------------------------------------------------------
Can Microsoft® SilverlightTM Streaming service be used for non-video files such as music files?
Yes. All valid content encoded for Silverlight applications and presented with Silverlight can be used. This includes music files such as WMA and MP3. Business logic written in JavaScript can also be stored and streamed to the client, and in the future, any SilverlightTM Dynamic Language Runtime assemblies can also be used.
-------------------------------------------------------------------------------------------------------------
How does the service stream content?
Content is streamed progressively using a progressive download mechanism today. Active streaming support using Windows Media Services is being considered based on customer feedback in the future.
-------------------------------------------------------------------------------------------------------------
Can I stream live content/events?
No, the service only supports on-demand content today. Customers requiring additional capabilities are encouraged to contact a Windows Media Streaming Hosting Provider.
-------------------------------------------------------------------------------------------------------------
How does XAP work in silverlight?
Once you have created the .xap file (explained below), the Silverlight 2 or 3 plug-in downloads the file and runs it in a separate work space.
-------------------------------------------------------------------------------------------------------------
How do I use a .xap file in silverlight?
A .xap file is used to contain and transfer the assemblies and resources of a managed code application. This managed code application must be run within the Silverlight 2 browser plug-in.
-------------------------------------------------------------------------------------------------------------
What are the files contained in the .xap file in Silverlight?
A basic xap file in silverlight will have an assembly related to specific code for the application, an application manifest file and any additional assemblies need to run the application. At a minimum, two files are needed, the application manifest file and the application assembly.
For example:
AppManifest.xaml
MyPianoV2.dll
-------------------------------------------------------------------------------------------------------------
What is contained in the AppManifest.xaml file in silverlight?
The AppManifest.xaml file contains the deployment details needed to run the silverlight application.
-------------------------------------------------------------------------------------------------------------
What is the XAP mime type in silverlight?
The .xap mime type is: application/x-silverlight
-------------------------------------------------------------------------------------------------------------
Which platforms and browsers will Silverlight 2 supports?
Silverlight will support all major browsers on both Mac OS X and on Windows. Particular care is being taken to account for differences in platform and browser capabilities to ensure a consistent experience including experiences on Firefox, Safari, and Internet Explorer. Microsoft will extend the support for Silverlight on Linux through a partnership with Novell.
-------------------------------------------------------------------------------------------------------------
What is the difference between Silverlight 1 and Silverlight 2
Nothing, Silverlight 2 is a full superset of Silverlight 1.0 - it is 100% compatible with Silverlight 1.0 applications and provides significantly more powerful features and functionality. Silverlight 1.0 applications even benefit from improvements in media playback and performance characteristics of Silverlight 2 with no additional work.
-------------------------------------------------------------------------------------------------------------
What is Storyboard in Silverlight?
Storyboard is a Silverlight class with controls animations with a timeline, and provides object and property targeting information for its child animations
-------------------------------------------------------------------------------------------------------------
What is the difference between WPF and Silverlight?
Silverlight uses a particular implementation of a XAML parser, with that parser being part of the Silverlight core install. In some cases, the parsing behavior differs from the parsing behavior in Windows Presentation Foundation (WPF), which also has a particular implementation
-------------------------------------------------------------------------------------------------------------
1 comments