Windows Presentation Foundation (WPF) Interview Preparation Guide
Download PDF

WPF Interview Questions and Answers will guide us now that Windows Presentation Foundation (WPF) is a graphical subsystem for rendering user interfaces in Windows-based applications. WPF, previously known as Avalon, was initially released as part of .NET Framework 3.0. Designed to remove dependencies on the aging GDI subsystem, so learn more about WPF with the help of this WPF Interview Questions with Answers guide

57 WPF Questions and Answers:

Table of Contents:

WPF Interview Questions and Answers
WPF Interview Questions and Answers

1 :: Explain the difference between DynamicResource and StaticResource?

The most basic difference is that StaticResource evaluates the resource one time only, but DynamicResource evaluates it every time the resource is required. And due to this reason, DyanamicResource is heavy on the system but it makes pages or windows load faster.

2 :: What is MVVM pattern?

MVVM pattern divides the UI code into 3 basic parts:

★ Model:
It represents a set of classes, which contain data received from databases.
★ View:
It is the code that agrees with the visual representation of the data.
★ ViewModel:
It is the layer that binds View and Model together. It presents this data in a manner, which is easy to understand. It also controls how View interacts with the application.

3 :: Explain the difference between Events and Commands in the MVVM model?

Commands are more powerful and are advantageous to use instead of events. Actions are deeply connected with the event's source and, therefore, the events cannot be reused easily. But commands make it possible to efficiently maintain multiple actions at one place and then reuse them as per our requirement.

4 :: List the different kinds of Routed events in WPF?

There are three types of Routed events in WPF. They are:
★ Direct:
This event can only be raised by the element in which it was originated.
★ Tunneling:
This event is first raised by the element in which it was originated and then it gets raised by each consecutive container in the visual tree.
★ Bubbling:
This event is first raised by the uppermost container in the visual tree and then gets raised by each consecutive container lying below the uppermost one, till it reaches the element it where it was originated.

5 :: Which NameSpace has 'Thumb' and 'Popup' controls?

The namespace system.windows.controls.primitives has 'Popup' and 'Thumb' controls.

6 :: Which classes contain arbitrary content?

★ Content Control
★ HeaderedContent Control
★ Items Control
★ HeaderedItems Control

7 :: How to command-line arguments be retrieved in a WPF application?

The most preferred method for this is to call System.Environment.GetCommandLineArgs at any random point in the application.

8 :: How you can get Automation IDs of items in a ItemsControl?

The best way to do this is by setting it Name property as it is utilized for automation purposes by default. But if you require to give an ID to an element, other than it's name, then the AutomationProperties.AutomationID property can be set as per need.

9 :: Is it better to wrap items in ComboBoxItem?

It has some important properties like IsSelected and IsHighlighted and also some necessary events like Selected and Unselected. ComboBoxItem is a content control and is thus very useful for adding simple strings to a ComboBox.

10 :: Tell me can Windows Service be created Using WPF?

No, Windows Services cannot be created using WPF. WPF is a presentation language. Windows services need specific permissions to execute some GUI related functions. Therefore, if it does not get the required permissions, it gives errors.

11 :: Why ListBox made to scroll smoothly?

ListBox is configured to scroll on an item-by-item basis by default. This is dependent on the height of each element and the scrolling action, thus, giving a rough feeling. Better way is to configure scrolling action so that it shifts items by a few pixels irrespective of their height. This is done by setting the ScrollViewer.CanContentScroll property to "false". This will, however, make the ListBox lose the virtualization property.

12 :: From where the execution start in WPF application?

WPF applications created in Visual Studio run without a Main method. This is because the applications are special-cased when they are compiled from XAML. That means, Visual Studio attaches a Build Action of ApplicationDefinition to the XAML file. This results in the auto generation of a Main method.

13 :: How you can make a ToolTip appear while hovering over a disabled element?

For this purpose, the ShowOnDisabled property can be used. It belongs to the ToolTipService class.

14 :: How WPF and Silverlight are similar?

Silverlight and WPF are similar in the sense that they both use XAML and share the same code, syntax and libraries.

15 :: Define XBAP?

XBAP is the abbreviated form of XAML Browser Application. It allows WPF applications to run inside web browsers. Installation of .NET framework on the client machine is a prerequisite for running WPF applications. But hosted applications are not given full admission to the client's machine and are executed in a sandbox environment. Using WPF, such applications can also be created, which run directly in the browser. These applications are called XBAP.

16 :: Define adorner?

They are a special kind of FrameworkElement that provide visual clues to the user. They are also used to add handles to elements and give information about the state of a control. Adorners are bound to the UIElement and are rendered on a surface that lies above the element, which is adorned. This surface is called an AdornerLayer. Adorners are mostly placed relatively to the bounded element.

17 :: Does MDI supported in WPF?

MDI is not supported in WPF. UserControl can be used to give the same functionality as MDI.

18 :: What is the Serialization?

It is the process of converting the state of an object to stream of bytes.

19 :: Describe the unit of measurement in WPF?

All measurements are made in device-independent pixels, or logical pixels. One pixel is 1/96th part of an inch. These logical pixels are always mentioned as double, this enables them to have a fractional value too.

20 :: How to determine if a Freezable object is Frozen?

"IsFrozen" property of the object can be used to determine if the freezable object is frozen.

21 :: Why layout panels are needed in WPF?

Layout Panels are needed so that the controls fit screens of different sizes or having different font sizes. If we arrange controls on fixed pixel coordinates, then this model will fail when moved to a different environment. For this reason, Layout panels are necessary.

22 :: What is UserControl?

UserControl wraps existing controls into a single reusable group. It contains a XAML file and a code. UserControl cannot be styled or templated.

23 :: Describe the method to force close a ToolTip, which is currently visible?

It can be closed by setting the tooltip's IsOpen property to false.

24 :: Define INotifyPropertyChanged Interface?

The InotifyPropertyChanged notifies clients, generally those who are binding, if the value of a property gets changed. It has an event, called PropertyChanged, which gets raised everytime a property of Model object is changed.

25 :: Define the attached Properties in WPF?

Attached properties are basically Dependency Properties that allows the attachment of a value to any random object.