Skip to content

Latest commit

 

History

History
70 lines (39 loc) · 8.26 KB

common-faq.md

File metadata and controls

70 lines (39 loc) · 8.26 KB
title page_title description slug tags published position
Getting Started
Getting Started
Getting Started
common-faq
general, common, faq
true
3

Common FAQ

We strongly recommend that you first check the fundamental concepts of {% if site.site_name == 'WPF' %}WPF{% endif %}{% if site.site_name == 'Silverlight' %}Silverlight{% endif %}. Below you can find a list of the most common frequently asked questions.

  • Overview

{% if site.site_name == 'WPF' %}Windows Presentation Foundation (WPF) provides developers with a unified programming model for building rich Windows smart client user experiences that incorporate UI, media, and documents. For more information please check the WPF Overview{% endif %}

{% if site.site_name == 'Silverlight' %}Microsoft Silverlight is a cross-browser, cross-platform implementation of the .NET Framework for building and delivering the next generation of media experiences and rich interactive applications (RIA) for the Web. You can also create Silverlight applications that run outside of the browser on your desktop. For more information please check the Silverlight Overview.{% endif %}

  • What is XAML?

XAML itself is a larger language concept than WPF. You can find more details on the Extensible Application Markup Language (XAML) concepts and how to use XAML in your applications in this {% if site.site_name == 'WPF' %}msdn article. You could as well check this article on WPF Architecture.{% endif %}{% if site.site_name == 'Silverlight' %}msdn article{% endif %}.

  • Assemblies and Namespaces in .NET:

    • An assembly is a collection of types and resources that are built to work together and form a logical unit of functionality. All types in the .NET Framework must exist in assemblies and the common language runtime does not support types outside of assemblies.

    • The namespace keyword is used to declare a scope. Namespaces are a second organizational method that complements assemblies. Namespaces are a way of grouping type names and reducing the chance of name collisions. A namespace can contain both other namespaces and types. The full name of a type includes the combination of namespaces that contain that type.

  • Events

{% if site.site_name == 'WPF' %}WPF introduces routed events that can invoke handlers that exist on various listeners in the element tree of an application. For more information please check this msdn article.{% endif %}{% if site.site_name == 'Silverlight' %} The base class library in Silverlight is a subset of the larger .NET Framework class library. It includes the base data types, such as strings and integers, which are used by all software developers. It also includes such diverse types as type conversion classes, exception classes, collection and container classes, events and event handlers, threading and synchronization classes. For more information please check thismsdn article.{% endif %}

  • Attached Properties

An attached property is intended to be used as a type of global property that is settable on any object. For more information please check this {% if site.site_name == 'WPF' %}msdn article{% endif %}{% if site.site_name == 'Silverlight' %}msdn article{% endif %}.

  • Collections and Data Structures

Detailed information on Collections and DataStructures could be found in this {% if site.site_name == 'WPF' %}msdn article.{% endif %}{% if site.site_name == 'Silverlight' %}msdn article{% endif %}.

  • Binding Collections

A binding source object can be treated as a data collection of objects that are often grouped together (such as the result of a query to a database). You can enumerate over any collection that implements the IEnumerable interface. However, to set up dynamic bindings so that insertions or deletions in the collection update the UI automatically, the collection must implement the INotifyCollectionChanged interface. This interface exposes an event, which should be raised whenever the underlying collection changes. {% if site.site_name == 'WPF' %}WPF provides a built-in implementation of a data collection that exposes the INotifyCollectionChanged interface - this is the ObservableCollection(T).{% endif %}{% if site.site_name == 'Silverlight' %}Silverlight provides a built-in implementation of a data collection that exposes the INotifyCollectionChanged interface - this is the ObservableCollection(T).{% endif %}

  • Data Binding

Data binding is the process that establishes a connection between the application UI and the business logic. It provides a simple and consistent way for applications to present and interact with data. Elements can be bound to data from a variety of data sources in the form of common language runtime (CLR) objects and XML. For more information please check this {% if site.site_name == 'WPF' %}msdn article{% endif %}{% if site.site_name == 'Silverlight' %}msdn article{% endif %}.

  • Data Conversion

With the help of IValueConverter, you could apply a custom logic to a binding. For additional information and an example please check this msdn article.

  • Styles and Templates

{% if site.site_name == 'WPF' %}WPF styling and templating refer to a suite of features that allow an application to create visually compelling applications and to standardize on a particular look for their product. For more information, please check this msdn article.{% endif %}{% if site.site_name == 'Silverlight' %} Silverlight uses default styles and templates for several controls. You can copy these styles and templates into your project and modify them in order to customize control behavior and appearance. For more information, please check this msdn article.{% endif %}

  • DataTemplates

{% if site.site_name == 'WPF' %}WPF has built-in functionality to support the customization of data presentation and its data templating model provides you with great flexibility. For more information, please check this msdn article.{% endif %}{% if site.site_name == 'Silverlight' %} Silverlight uses default styles and templates for several controls. You can copy these styles and templates into your project and modify them in order to customize control behavior and appearance. For more information, please check this msdn article.{% endif %}

  • Style Selectors

They provide a way to apply styles based on custom logic. For more information, please check this msdn article.

  • DataTemplate Selectors

They provide a way to choose a DataTemplate based on the data object and the data-bound element. For more information, please check this msdn article.