Note: many examples in this section taken or adapted from Pro WPF 4.5 C#, Matthew MacDonald, apress, 2012, pp

Size: px
Start display at page:

Download "Note: many examples in this section taken or adapted from Pro WPF 4.5 C#, Matthew MacDonald, apress, 2012, pp"

Transcription

1 COMP 585 Noteset #12 Note: many examples in this section taken or adapted from Pro WPF 4.5 C#, Matthew MacDonald, apress, 2012, pp WPF: More Code vs. Markup The apparently recommended way to use WPF places heavy emphasis on putting as much of the GUI design into XAML as possible, and only using the code-behind files to implement occasional delegates for buttons and menus. Code-only WPF is tedious, but gives the implementer full control over the behavior of the app. Dynamically Loaded XAML One unique aspect of a markup language like XAML is that it can be parsed dynamically or on the fly. Imagine a WPF app that during initialization reads in a XAML file that defines a GUI element in markup. The XAML can be parsed on the fly, converted to executable code, and dynamically linked into the already running app. Code-only app: using System; using System.Windows; using System.Windows.Controls; using System.Windows.Markup; using System.IO; public class Window1 : Window { private Button button1; public Window1() { public Window1(string xamlfile) { this.width = this.height = 285; this.top = this.left = 100; this.title = "Dynamically loaded XAML"; DependencyObject rootelement; using (FileStream fs = new FileStream(xamlfile, FileMode.Open)) { rootelement = (DependencyObject)XamlReader.Load(fs); this.content = rootelement; button1 = (Button) LogicalTreeHelper. FindLogicalNode(rootElement,"button1"); button1.click += button1click; private void button1click(object obj, RoutedEventArgs args) { button1.content = "Thank You!"; [STAThread] public static void Main() { Window1 w = new Window1("DP.xaml"); Application app = new Application(); app.run(w); XAML file "DP.xaml" that defines a DockPanel with Button: <DockPanel xmlns=" <Button Name="button1" Margin="30">Please click me.</button> </DockPanel>

2 The code has for generality chosen to cast the object built from the.xaml file as a DependencyObject. It could also have chosen to cast it as a Panel, which is a more immediate ancestor of DockPanel, or DockPanel itself. See the WPF inheritance hierarchy at the end of noteset #11. A quick summary: Object: root of all C# classes Dispatcher Object: classes that are modified on the same thread that created them. Dependency Object: classes that support Dependency properties. Visual: classes that have a 2D visual representation UIElement: visuals that support layout, input, focus, events (LIFE) FrameworkElement: small expansion of UIElement The using statement (which is distinct from the using directive for importing namespaces) is used for objects from certain classes like File and Font that implement the IDisposable interface and have unmanaged resources that must be disposed of explicitly. The using statement takes care of the dispose. The compiler converts it into an equivalent try/catch. See the MSDN documentation on the C# using statement. The FileStream class is responsible for parsing the XAML content of the file. The System.Windows.LogicalTreeHelper class contains a collection of static methods that are useful for navigating the logical tree of the WPF app. It exposes to the developer some of the DOM (document object model) structure of the app. More on the WPF Build Process: Partial Classes and XAML vs. BAML The sources for a C# WPF app are a mixture of markup and C# code. The end product is an executable. In between are some intermediate steps that require the XAML to be converted to a C# partial class, then compiled and linked with existing C# source. In more detail: XAML is compiled into BAML (binary XML). For example, Window1.xaml is compiled into a temporary file Window1.baml. Also at this step, a Window1.g.cs file is also created, which contains a partial class def for the Window1 class and a constructor that calls the InitializeComponent() method. The compiler then compiles all.cs files (both original source and generated source) and links them into a final executable. At run time, the Window1 constructor is called and the InitializeComponent() method is called, which loads the BAML file dynamically.

3 Layout The Window class is an example of a WPF Content control. This is part of the class hierarchy for class Window: FrameworkElement Control ContentControl Window Content controls have a Content property that can have only one value. This is in contrast to an ItemsControl like a TreeView: FrameworkElement Control ItemsControl TreeView The WPF layout philosophy is to provide classes that derive from class Panel to implement layout. These Panel objects can be assigned as the value of the Content property of their parent Window object. Panel is a separate derived class path below the FrameworkElement and is therefore a sibling to the Control class. Panels StackPanel: provides a single row or column of elements WrapPanel: provides multiple rows of elements that automatically wrap to the next row DockPanel: docks elements to the edges Grid: provides a flexible table arrangement UniformGrid: like Grid, but all rows have same height, all columns have the same width Canvas: provides absolute positioning, in other words no layout In XAML, the top-level layout of the Window would look like this: <Window x:class="mainwindow" > <Grid> </Grid> </Window> In between the opening and closing Window tags, there can appear exactly one nested tag. That tag implicitly becomes the Content property of the Window. You may have noticed that in Visual Studio, a default WPF app starts with a Window that has a Grid for its Content property, this can be edited to any of the other Panel tags. In C#, the top-level layout would look like this: class MainWindow : Window { private Grid grid; public MainWindow() { grid = new Grid(); this.content = grid; public static void Main() { MainWindow w = new MainWindow();

4 StackPanel Example Code equivalent: <Window > <StackPanel> <Label>A Button Stack</Label> <Button>Button 1</Button> <Button>Button 2</Button> <Button>Button 3</Button> <Button>Button 4</Button> </StackPanel> </Window> StackPanel p = new StackPanel(); Label x = new Label(); x.content = ; p.children.add(x); Button b = new Button(); b.content = ; p.children.add(b); w.content = p; General Layout Properties Here are a few Control properties that can be set on any FrameworkElement object. When that object is added to a panel with layout logic, the logic can use the value of the property to implement the layout for that Control appropriately. HorizontalAlignment VerticalAlignment Margin MinWidth, MinHeight MaxWidth, MaxHeight Width, Height The general mapping between code and markup is that an object reference in code becomes a tag in XAML, and a property of the object in code becomes an attribute of the opening tag in XAML. XAML Example <Button HorizontalAlignment="Center">Button 1</Button> Code Example Button b = new Button(); b.content = ; b.horizontalalignment = HorizontalAlignment.Center;

5 Grid The Grid panel is a good general choice for most layouts. It s the default in Visual Studio for a WPF application. It corresponds to a container in Java Swing with a GridBagLayout. There are two parts to defining a Grid panel. First, you define the structure of the Grid by creating row and column definition objects or tags. These are similar to constraints in the Java Swing GridBagLayout. This step implicitly defines the number of rows and columns and the number of positions that are available in the Grid. Next, you add elements to specific positions in the Grid. XAML Example: <Grid> <Grid.RowDefinitions> <RowDefinition> </RowDefinition> <RowDefinition> </RowDefinition> <RowDefinition> </RowDefinition> </Grid.RowDefinitions> <Grid.ColumnDefinitions> <ColumnDefinition> </ColumnDefinition> <ColumnDefinition> </ColumnDefinition> </Grid.ColumnDefinitions> <Button Grid.Row="0" Grid.Column="0">Top Left</Button> <Button Grid.Row="0" Grid.Column="1">Top Right</Button> <Button Grid.Row="1" Grid.Column="0">Mid Left</Button> <Button Grid.Row="1" Grid.Column="1">Mid Right</Button> <Button Grid.Row="2" Grid.Column="0">Btm Left</Button> <Button Grid.Row="2" Grid.Column="1">Btm Right</Button> </Grid> The content of the RowDefinition and ContentDefinition tags can be empty. You can add settings values here to change the way space is allocated between the rows and columns. After defining the Grid structure, individual controls can be placed into the Grid at specific row-column indexes, using the Grid.Row and Grid.Column attached properties.

6 Equivalent Code Example: using System; using System.Windows; using System.Windows.Controls; public class LayoutDemo : Window { private Button[,] btns; private String[,] btntxt = { {"Top Left", "Top Right", {"Mid Left", "Mid Right", {"Btm Left", "Btm Right" ; public LayoutDemo() { Grid g = new Grid(); g.rowdefinitions.add(new RowDefinition()); g.rowdefinitions.add(new RowDefinition()); g.rowdefinitions.add(new RowDefinition()); g.columndefinitions.add(new ColumnDefinition()); g.columndefinitions.add(new ColumnDefinition()); this.content = g; btns = new Button[3,2]; for (int i=0; i<btns.getlength(0); i++) { for (int j=0; j<btns.getlength(1); j++) { btns[i,j] = new Button(); btns[i,j].content = btntxt[i,j]; Grid.SetRow(btns[i,j],i); Grid.SetColumn(btns[i,j],j); g.children.add(btns[i,j]); [STAThread] public static void Main() { LayoutDemo w = new LayoutDemo(); Application app = new Application(); app.run(w); Note that row and column values for a Button added to a Grid are examples of attached properties, meaning that they are not native properties of the Button, but are needed when the Button is added to the GUI in the context of a Grid. In the code example, note that since row and column are not native properties, it is not possible to write: Button b = new Button(); b.row = 1; b.column = 0; Instead you must write: Button b = new Button(); Grid.SetRow(b,1); Grid.SetColumn(b,0);

7 More Control over Grid Rows and Columns You can add attributes to the RowDefinition and ColumnDefinition tags or objects to control absolute or relative sizes. Absolute Sizing: set Width and Height attributes to specific fixed values. Automatic Sizing: set Width and Height to Auto, this is similar to the WinForms AutoSize property. The content of the row or column is examined and the width or height is set to what it needs to be to display its content. Proportional Sizing: Newly available space is divided proportionately across rows and columns. You can also mix/match the three types of sizing. Absolute Sizing: <ColumnDefinition Width="100"></ColumnDefinition> Automatic: <RowDefinition Height="Auto"></RowDefinition> Proportional: <RowDefinition Height="*"></RowDefinition> <RowDefinition Height="2*"></RowDefinition> Span If an element in the grid needs to start at one grid position but span multiple rows/columns, use the RowSpan and ColumnSpan attached properties.

8 Canvas All of the other panels are layout panels. Canvas is a special panel specifically for no layout. This makes it useful for positioning widgets at fixed predetermined positions, or as a basis for displaying computer graphics based info in terms of graphics primitives like points, lines, shapes, colors, etc. Widgets attached to a Canvas also make use of attached properties Canvas.Left and Canvas.Top to indicate absolute positioning, similar to the row and column attached properties in the case of the Grid panel. Since there is no layout manager, there is no enforcement of any constraints including non-overlap of controls. <Canvas> <Button Canvas.Left="10" Canvas.Top="10">(10,10)</Button> <Button Canvas.Left="120" Canvas.Top="30">(120,30)</Button> <Button Canvas.Left="60" Canvas.Top="80" Width="50" Height="50">(60,80)</Button> <Button Canvas.Left="70" Canvas.Top="120" Width="100" Height="50">(70,120)</Button> </Canvas> Note that Width and Height are native Control properties, not attached properties. As an exercise, convert this layout to code. Also note (as was mentioned earlier), getting a Canvas to respond to mouse events requires giving the Canvas a background color. Special Case: InkCanvas This is a predefined customized Canvas object that implements something similar to the Scribble app that was assigned as a practice problem.

LAYOUT. Chapter 3 of Pro WPF : By Matthew MacDonald Assist Lect. Wadhah R. Baiee. College of IT Univ. of Babylon

LAYOUT. Chapter 3 of Pro WPF : By Matthew MacDonald Assist Lect. Wadhah R. Baiee. College of IT Univ. of Babylon LAYOUT Chapter 3 of Pro WPF : By Matthew MacDonald Assist Lect. Wadhah R. Baiee. College of IT Univ. of Babylon - 2014 Loading and Compiling XAML (See Codes in your Textbook) There are three distinct coding

More information

CPSC Tutorial 5 WPF Applications

CPSC Tutorial 5 WPF Applications CPSC 481 - Tutorial 5 WPF Applications (based on previous tutorials by Alice Thudt, Fateme Rajabiyazdi, David Ledo, Brennan Jones, and Sowmya Somanath) Today Horizontal Prototype WPF Applications Controls

More information

Windows Presentation Foundation. Jim Fawcett CSE687 Object Oriented Design Spring 2018

Windows Presentation Foundation. Jim Fawcett CSE687 Object Oriented Design Spring 2018 Windows Presentation Foundation Jim Fawcett CSE687 Object Oriented Design Spring 2018 References Pro C# 5 and the.net 4.5 Platform, Andrew Troelsen, Apress, 2012 Programming WPF, 2nd edition, Sells & Griffiths,

More information

CPSC Tutorial 5

CPSC Tutorial 5 CPSC 481 - Tutorial 5 Assignment #2 and WPF (based on previous tutorials by Alice Thudt, Fateme Rajabiyazdi, David Ledo, Brennan Jones, Sowmya Somanath, and Kevin Ta) Introduction Contact Info li26@ucalgary.ca

More information

XAML - BUTTON. The Button class represents the most basic type of button control. The hierarchical inheritance of Button class is as follows

XAML - BUTTON. The Button class represents the most basic type of button control. The hierarchical inheritance of Button class is as follows http://www.tutorialspoint.com/xaml/xaml_button.htm XAML - BUTTON Copyright tutorialspoint.com The Button class represents the most basic type of button control. The hierarchical inheritance of Button class

More information

SHAPES & TRANSFORMS. Chapter 12 of Pro WPF : By Matthew MacDonald Assist Lect. Wadhah R. Baiee. College of IT Univ.

SHAPES & TRANSFORMS. Chapter 12 of Pro WPF : By Matthew MacDonald Assist Lect. Wadhah R. Baiee. College of IT Univ. SHAPES & TRANSFORMS Chapter 12 of Pro WPF : By Matthew MacDonald Assist Lect. Wadhah R. Baiee. College of IT Univ. of Babylon - 2014 Understanding Shapes The simplest way to draw 2-D graphical content

More information

Windows Presentation Foundation Programming Using C#

Windows Presentation Foundation Programming Using C# Windows Presentation Foundation Programming Using C# Duration: 35 hours Price: $750 Delivery Option: Attend training via an on-demand, self-paced platform paired with personal instructor facilitation.

More information

IAP C# Lecture 5 XAML and the Windows Presentation Foundation. Geza Kovacs

IAP C# Lecture 5 XAML and the Windows Presentation Foundation. Geza Kovacs IAP C# Lecture 5 XAML and the Windows Presentation Foundation Geza Kovacs What is Windows Presentation Foundation (WPF)? A toolkit for building graphical user interfaces (GUI) for an application Ships

More information

sharpcorner.com/uploadfile/37db1d/4958/default.aspx?articleid=cb0b291c-52ae-4b80-a95c- 438d76fa1145

sharpcorner.com/uploadfile/37db1d/4958/default.aspx?articleid=cb0b291c-52ae-4b80-a95c- 438d76fa1145 Navigation in Silverlight -3 1. Introduction: In previous article we learn to navigate to another Silverlight page without using navigation framework, which is new feature in Silverlight 3. Read it Here:

More information

WebFront for Service Manager

WebFront for Service Manager WebFront for Service Manager Authoring Guide Gridpro AB Rev: 2.10.6513 (System Center 2012) & 3.0.6513 (System Center 2016) Published: November 2017 Contents Purpose... 3 Introduction... 3 Limitations...

More information

Authoring Guide Gridpro AB Rev: Published: March 2014

Authoring Guide Gridpro AB Rev: Published: March 2014 Authoring Guide Gridpro AB Rev: 2.5.5197 Published: March 2014 Contents Purpose... 3 Introduction... 3 Limitations... 3 Prerequisites... 3 Customizing Forms... 4 Launching the Customization Editor... 4

More information

Controls WPF. Windows Programming. Lecture 8-1. Krzysztof Mossakowski Faculty of Mathematics and Information Science

Controls WPF. Windows Programming. Lecture 8-1. Krzysztof Mossakowski Faculty of Mathematics and Information Science WPF Windows Programming Lecture 8-1 Controls Content Models There are 4 content models used by controls: ContentControl contains a single item Lecture 8-2 used by: Button, ButtonBase, CheckBox, ComboBoxItem,

More information

Authoring Guide v2.1 PATRIK SUNDQVIST

Authoring Guide v2.1 PATRIK SUNDQVIST 2012 Authoring Guide v2.1 PATRIK SUNDQVIST Purpose The purpose of this document is to provide assistance when customizing WebFront for Service Manager 2012. 1 TABLE OF CONTENTS 2 Introduction... 2 3 Limitations...

More information

Index. Application programming interface (API), 38. Binary Application Markup Language (BAML), 4

Index. Application programming interface (API), 38. Binary Application Markup Language (BAML), 4 Index A Application programming interface (API), 38 B Binary Application Markup Language (BAML), 4 C Class under test (CUT), 65 Code-behind file, 128 Command Query Responsibility Segregation (CQRS), 36

More information

Week 7: NavigationView Control Exercise

Week 7: NavigationView Control Exercise BCIS 4650 Week 7: NavigationView Control Exercise BUILD THE UI FIRST (ALWAYS). ================================================================================================ 1. Start with a New Project

More information

Question No: 1 (Marks: 1) - Please choose one is an occurrence within a particular system or domain. Function Event (Page#7) Information Transaction

Question No: 1 (Marks: 1) - Please choose one is an occurrence within a particular system or domain. Function Event (Page#7) Information Transaction MUHAMMAD FAISAL MIT 4 th Semester Al-Barq Campus (VGJW01) Gujranwala faisalgrw123@gmail.com Solved Reference MCQ s for Mid Term Papers CS411 VISUAL PROGRAMMING Question No: 1 (Marks: 1) - Please choose

More information

XAML. Chapter 2 of Pro WPF : By Matthew MacDonald Assist Lect. Wadhah R. Baiee. College of IT Univ. of Babylon Understanding XAML

XAML. Chapter 2 of Pro WPF : By Matthew MacDonald Assist Lect. Wadhah R. Baiee. College of IT Univ. of Babylon Understanding XAML XAML Chapter 2 of Pro WPF : By Matthew MacDonald Assist Lect. Wadhah R. Baiee. College of IT Univ. of Babylon - 2014 Understanding XAML Developers realized long ago that the most efficient way to tackle

More information

Hands-On Lab. Building Applications in Silverlight 4 Module 6: Printing the Schedule. Printing the Schedule

Hands-On Lab. Building Applications in Silverlight 4 Module 6: Printing the Schedule. Printing the Schedule Hands-On Lab Building Applications in Silverlight 4 Module 6: 1 P a g e Contents Introduction... 3 Exercise 1: on One Page... 4 Create the Printing ViewModel and View... 4 Hook up the Print Button... 7

More information

KillTest. 半年免费更新服务

KillTest.   半年免费更新服务 KillTest 质量更高 服务更好 学习资料 http://www.killtest.cn 半年免费更新服务 Exam : 70-502 (C#) Title : TS: Microsoft.NET Framework 3.5 Windows Presentation Foundation Version : Demo 1 / 15 1. You are creating a Windows Presentation

More information

Introduction p. 1 Who Should Read This Book? p. 2 Software Requirements p. 3 Code Examples p. 3 How This Book Is Organized p. 4 Conventions Used in

Introduction p. 1 Who Should Read This Book? p. 2 Software Requirements p. 3 Code Examples p. 3 How This Book Is Organized p. 4 Conventions Used in Introduction p. 1 Who Should Read This Book? p. 2 Software Requirements p. 3 Code Examples p. 3 How This Book Is Organized p. 4 Conventions Used in This Book p. 6 Background Why WPF? p. 7 A Look at the

More information

Practical WPF. Learn by Working Professionals

Practical WPF. Learn by Working Professionals Practical WPF Learn by Working Professionals WPF Course Division Day 1 WPF prerequisite What is WPF WPF XAML System WPF trees WPF Properties Day 2 Common WPF Controls WPF Command System WPF Event System

More information

RadGanttView For Silverlight and WPF

RadGanttView For Silverlight and WPF RadGanttView For Silverlight and WPF This tutorial will introduce RadGanttView, part of the Telerik suite of XAML controls. Setting Up The Project To begin, open Visual Studio and click on the Telerik

More information

Week 8: Data Binding Exercise (Bookstore)

Week 8: Data Binding Exercise (Bookstore) BCIS 4650 Week 8: Data Binding Exercise (Bookstore) Page 1 of 6 Page 2 of 6 XAML CODE FOR MainPage.xaml

More information

CS411 Visual Programming Mid-Term

CS411 Visual Programming Mid-Term 1. Every is represented by an event-object. Information Entity Object Event page10 2. "Situation" is an event occurrence that requires a (n). Reaction page 10 Class Object Action 3. Events can be. Specialized

More information

Microsoft Windows Apps Dev w/microsoft.net Framework 4. Download Full Version :

Microsoft Windows Apps Dev w/microsoft.net Framework 4. Download Full Version : Microsoft 70-511 Windows Apps Dev w/microsoft.net Framework 4 Download Full Version : https://killexams.com/pass4sure/exam-detail/70-511 Answer: A, C QUESTION: 215 You develop a Windows Presentation Foundation

More information

Hands-On Lab. Hello Windows Phone

Hands-On Lab. Hello Windows Phone Hands-On Lab Hello Windows Phone Lab version: 1.1.0 Last updated: 12/8/2010 CONTENTS OVERVIEW... 3 EXERCISE 1: CREATING WINDOWS PHONE APPLICATIONS WITH MICROSOFT VISUAL STUDIO 2010 EXPRESS FOR WINDOWS

More information

Course 2D_WPF: 2D-Computer Graphics with C# + WPF Chapter C1a: The Intro Project Written in XAML and C#

Course 2D_WPF: 2D-Computer Graphics with C# + WPF Chapter C1a: The Intro Project Written in XAML and C# 1 Course 2D_WPF: 2D-Computer Graphics with C# + WPF Chapter C1a: The Intro Project Written in XAML and C# An Empty Window Copyright by V. Miszalok, last update: 2011-02-08 Guidance for Visual C# 2010 Express,

More information

Microsoft Visual Studio 2010

Microsoft Visual Studio 2010 Microsoft Visual Studio 2010 A Beginner's Guide Joe Mayo Mc Grauu Hill New York Chicago San Francisco Lisbon London Madrid Mexico City Milan New Delhi San Juan Seoul Singapore Sydney Toronto Contents ACKNOWLEDGMENTS

More information

Step4: Now, Drag and drop the Textbox, Button and Text block from the Toolbox.

Step4: Now, Drag and drop the Textbox, Button and Text block from the Toolbox. Name of Experiment: Display the Unicode for the key-board characters. Exp No:WP4 Background: Student should have a basic knowledge of C#. Summary: After going through this experiment, the student is aware

More information

Advanced Programming C# Lecture 3. dr inż. Małgorzata Janik

Advanced Programming C# Lecture 3. dr inż. Małgorzata Janik Advanced Programming C# Lecture 3 dr inż. Małgorzata Janik majanik@if.pw.edu.pl Winter Semester 2017/2018 Windows Presentation Foundation Windows Presentation Foundation Allows for clear separation between

More information

Chapter 1. Introducing WPF. Objectives: Understand the motivation behind WPF. Examine the various flavors of WPF applications

Chapter 1. Introducing WPF. Objectives: Understand the motivation behind WPF. Examine the various flavors of WPF applications Chapter 1 Introducing WPF Objectives: Understand the motivation behind WPF Examine the various flavors of WPF applications Overview the services provided by WPF Examine the core WPF assemblies and namespaces

More information

CHAPTER 1: INTRODUCING C# 3

CHAPTER 1: INTRODUCING C# 3 INTRODUCTION xix PART I: THE OOP LANGUAGE CHAPTER 1: INTRODUCING C# 3 What Is the.net Framework? 4 What s in the.net Framework? 4 Writing Applications Using the.net Framework 5 What Is C#? 8 Applications

More information

Migrating to Windows Phone

Migrating to Windows Phone BOOKS FOR PROFESSIONALS BY PROFESSIONALS Liberty Blankenburg RELATED Migrating to Windows Phone Upgrade your existing programming knowledge and begin developing for the Windows Phone with Migrating to

More information

Sparkline for WPF 1. ComponentOne. Sparkline for WPF

Sparkline for WPF 1. ComponentOne. Sparkline for WPF Sparkline for WPF 1 ComponentOne Sparkline for WPF Sparkline for WPF 2 ComponentOne, a division of GrapeCity 201 South Highland Avenue, Third Floor Pittsburgh, PA 15206 USA Website: http://www.componentone.com

More information

CPSC Tutorial 6

CPSC Tutorial 6 CPSC 481 - Tutorial 6 More WPF (based on previous tutorials by Alice Thudt, Fateme Rajabiyazdi, David Ledo, Brennan Jones, Sowmya Somanath, and Kevin Ta) Introduction Contact Info li26@ucalgary.ca Please

More information

Note: This demo app created for this lab uses the Visual Studio 2015 RTM and Windows Tools SDK ver

Note: This demo app created for this lab uses the Visual Studio 2015 RTM and Windows Tools SDK ver Windows 10 UWP Hands on Lab Lab 2: Note: This demo app created for this lab uses the Visual Studio 2015 RTM and Windows Tools SDK ver 10240. 1. Select the Models folder and bring up the popup menu and

More information

Portable Class Libraries ---

Portable Class Libraries --- Portable Class Libraries --- Overview In this lab, you ll learn about Portable Class Libraries (PCLs). PCLs enable you to create managed assemblies that work on more than one.net Framework platform. Within

More information

CS3240 Human-Computer Interaction Lab Sheet Lab Session 3 Designer & Developer Collaboration

CS3240 Human-Computer Interaction Lab Sheet Lab Session 3 Designer & Developer Collaboration CS3240 Human-Computer Interaction Lab Sheet Lab Session 3 Designer & Developer Collaboration Page 1 Overview In this lab, users will get themselves familarise with fact that Expression Blend uses the identical

More information

windows-10-universal #windows- 10-universal

windows-10-universal #windows- 10-universal windows-10-universal #windows- 10-universal Table of Contents About 1 Chapter 1: Getting started with windows-10-universal 2 Remarks 2 Examples 2 Installation or Setup 2 Creating a new project (C# / XAML)

More information

CPSC 481 Tutorial 10 Expression Blend. Brennan Jones (based on tutorials by Bon Adriel Aseniero and David Ledo)

CPSC 481 Tutorial 10 Expression Blend. Brennan Jones (based on tutorials by Bon Adriel Aseniero and David Ledo) CPSC 481 Tutorial 10 Expression Blend Brennan Jones bdgjones@ucalgary.ca (based on tutorials by Bon Adriel Aseniero and David Ledo) Expression Blend Enables you to build rich and compelling applications

More information

The finished application DEMO ios-specific C# Android-specific C# Windows-specific C# Objective-C in XCode Java in Android Studio C# Shared Logic C# in Visual Studio ios codebase Android codebase Windows

More information

Interface Builders and Interface Description Languages

Interface Builders and Interface Description Languages Interface Builders and Interface Description Languages Interface Builders (IB) and Interface Description Languages (IDL) enable Drag and Drop construction of GUI's are part of man;y Visual Studio(2013)

More information

RadPDFViewer For Silverlight and WPF

RadPDFViewer For Silverlight and WPF RadPDFViewer For Silverlight and WPF This tutorial will introduce the RadPDFViewer control, part of the Telerik suite of XAML controls Setting Up The Project To begin, open Visual Studio and click on the

More information

Windows Presentation Foundation for.net Developers

Windows Presentation Foundation for.net Developers Telephone: 0208 942 5724 Email: info@aspecttraining.co.uk YOUR COURSE, YOUR WAY - MORE EFFECTIVE IT TRAINING Windows Presentation Foundation for.net Developers Duration: 5 days Overview: Aspect Training's

More information

GUI in C++ PV264 Advanced Programming in C++ Nikola Beneš Jan Mrázek Vladimír Štill. Faculty of Informatics, Masaryk University.

GUI in C++ PV264 Advanced Programming in C++ Nikola Beneš Jan Mrázek Vladimír Štill. Faculty of Informatics, Masaryk University. GUI in C++ PV264 Advanced Programming in C++ Nikola Beneš Jan Mrázek Vladimír Štill Faculty of Informatics, Masaryk University Spring 2017 PV264: GUI in C++ Spring 2017 1 / 23 Organisation Lectures this

More information

using System.IO; using System.Collections.Generic; using System.Xml.Linq;

using System.IO; using System.Collections.Generic; using System.Xml.Linq; using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Reflection; using System.Text; using System.Threading; using System.Windows; using System.Windows.Controls;

More information

Applied WPF 4 in Context US $49.99 SOURCE CODE ONLINE

Applied WPF 4 in Context US $49.99 SOURCE CODE ONLINE www.it-ebooks.info Contents at a Glance About the Author... xii About the Technical Reviewer... xiii Acknowledgments... xiv Introduction... xv Chapter 1: Introducing WPF and XAML... 1 Chapter 2: Sample

More information

CS3240 Human-Computer Interaction

CS3240 Human-Computer Interaction CS3240 Human-Computer Interaction Lab Session 3 Supplement Creating a Picture Viewer Silverlight Application Page 1 Introduction This supplementary document is provided as a reference that showcases an

More information

C# is intended to be a simple, modern, general-purpose, objectoriented programming language. Its development team is led by Anders Hejlsberg.

C# is intended to be a simple, modern, general-purpose, objectoriented programming language. Its development team is led by Anders Hejlsberg. C# is intended to be a simple, modern, general-purpose, objectoriented programming language. Its development team is led by Anders Hejlsberg. The most recent version is C# 5.0, which was released on August

More information

This book was purchased by

This book was purchased by This book was purchased by arosner@rosnertech.com Table of Contents 1. Introduction and Tooling 2. Controls 3. Data Binding 4. Views 5. Local Data 6. Remote data and services 7. Charms and Contracts 8.

More information

Chromatic Remote Control Product Guide Executive Way, Suite A Frederick, MD 21704

Chromatic Remote Control Product Guide Executive Way, Suite A Frederick, MD 21704 Chromatic Remote Control Product Guide 7340 Executive Way, Suite A Frederick, MD 21704 Document Version: 2.1 December 2013 Contents 1 Introduction... 3 2 Accessing Chromatic Remote Control... 4 2.1 Configure

More information

ComponentOne. Extended Library for UWP

ComponentOne. Extended Library for UWP ComponentOne Extended Library for UWP ComponentOne, a division of GrapeCity 201 South Highland Avenue, Third Floor Pittsburgh, PA 15206 USA Website: http://www.componentone.com Sales: sales@componentone.com

More information

WPF Graphics and Multimedia

WPF Graphics and Multimedia csfp6_24_wpfgraphics.fm Page 1 Thursday, July 7, 2016 10:10 AM 24 WPF Graphics and Multimedia Objectives In this chapter you ll: Manipulate fonts. Draw basic WPF shapes. Use WPF brushes to customize the

More information

ComponentOne. HyperPanel for WPF

ComponentOne. HyperPanel for WPF ComponentOne HyperPanel for WPF Copyright 1987-2012 GrapeCity, Inc. All rights reserved. ComponentOne, a division of GrapeCity 201 South Highland Avenue, Third Floor Pittsburgh, PA 15206 USA Internet:

More information

Introduction to Data Templates and Value Converters in Silverlight

Introduction to Data Templates and Value Converters in Silverlight Introduction to Data Templates and Value Converters in Silverlight An overview of Data Templates and Value Converters by JeremyBytes.com Overview Business applications are all about data, and laying out

More information

Master Code on Innovation and Inclusion

Master Code on Innovation and Inclusion Microsoft x HKEdCity: Master Code on Innovation and Inclusion Train-the-Trainers Workshop Writing Applications in C# with Visual Studio Content I. Getting the Tools Ready... 3 II. Getting Started with

More information

Lesson 9: Exercise: Tip Calculator

Lesson 9: Exercise: Tip Calculator Lesson 9: Exercise: Tip Calculator In this lesson we ll build our first complete app, a Tip Calculator. It will help solve one of the fundamental problems that I have whenever I'm out to a restaurant,

More information

Microsoft CSharp

Microsoft CSharp Microsoft 70-511-CSharp Windows Apps Dev Microsoft.NET Framework 4 Download Full Version : https://killexams.com/pass4sure/exam-detail/70-511-csharp QUESTION: 59 You are developing a Windows Presentation

More information

Copyright Soyatec. Licensed under the Eclipse Public License 1.0

Copyright Soyatec. Licensed under the Eclipse Public License 1.0 Contents Needs Architecture XAML fundamentals Data Binding Presentation Modeling Framework - MDA Advanced features Roadmap Testimony Q&A Needs Visual VisualUI UI Editor Editor Business Analyst UI UI Modeler

More information

.NET Programming Technologies Dr. Kovásznai, Gergely Biró, Csaba

.NET Programming Technologies Dr. Kovásznai, Gergely Biró, Csaba .NET Programming Technologies Dr. Kovásznai, Gergely Biró, Csaba .NET Programming Technologies Dr. Kovásznai, Gergely Biró, Csaba Publication date 2013 Szerzői jog 2013 Eszterházy Károly College Copyright

More information

Is image everything?

Is image everything? Is image everything? Review Computer Graphics technology enables GUIs and computer gaming. GUI's are a fundamental enabling computer technology. Without a GUI there would not be any, or much less: Computer

More information

Java Threads. COMP 585 Noteset #2 1

Java Threads. COMP 585 Noteset #2 1 Java Threads The topic of threads overlaps the boundary between software development and operation systems. Words like process, task, and thread may mean different things depending on the author and the

More information

Mastering VB.NET using Visual Studio 2010 Course Length: 5 days Price: $2,500

Mastering VB.NET using Visual Studio 2010 Course Length: 5 days Price: $2,500 Mastering VB.NET using Visual Studio 2010 Course Length: 5 days Price: $2,500 Summary Each day there will be a combination of presentations, code walk-throughs, and handson projects. The final project

More information

1A Windows Presentation Foundation Explained. Rob Layzell CA Technologies

1A Windows Presentation Foundation Explained. Rob Layzell CA Technologies 1A Windows Presentation Foundation Explained Rob Layzell CA Technologies Legal This presentation was based on current information and resource allocations as of April 18, 2011 and is subject to change

More information

Chapter 13. Additional Topics in Visual Basic The McGraw-Hill Companies, Inc. All rights reserved. McGraw-Hill

Chapter 13. Additional Topics in Visual Basic The McGraw-Hill Companies, Inc. All rights reserved. McGraw-Hill Chapter 13 Additional Topics in Visual Basic McGraw-Hill 2010 The McGraw-Hill Companies, Inc. All rights reserved. Objectives Write Windows applications that run on mobile devices Display database information

More information

User Interface Changes for SYSPRO

User Interface Changes for SYSPRO User Interface Changes for SYSPRO User Interface Changes for SYSPRO 7 3 Table of Contents Introduction... 4 User Interface Themes and Preferences... 4 Changes to the main menu in SYSPRO... 11 Conversion

More information

Event Dispatch. Interactor Tree Lightweight vs. Heavyweight Positional Dispatch Focus Dispatch. 2.4 Event Dispatch 1

Event Dispatch. Interactor Tree Lightweight vs. Heavyweight Positional Dispatch Focus Dispatch. 2.4 Event Dispatch 1 Event Dispatch Interactor Tree Lightweight vs. Heavyweight Positional Dispatch Focus Dispatch 2.4 Event Dispatch 1 Event Architecture A pipeline: - Capture and Queue low-level hardware events - Dispatch

More information

Event Dispatch. Interactor Tree Lightweight vs. Heavyweight Positional Dispatch Focus Dispatch. Event Architecture. A pipeline: Event Capture

Event Dispatch. Interactor Tree Lightweight vs. Heavyweight Positional Dispatch Focus Dispatch. Event Architecture. A pipeline: Event Capture Event Dispatch Interactor Tree Lightweight vs. Heavyweight Positional Dispatch Focus Dispatch 2.4 Event Dispatch 1 Event Architecture A pipeline: - Capture and Queue low-level hardware events - Dispatch

More information

Documentation of the UJAC print module's XML tag set.

Documentation of the UJAC print module's XML tag set. Documentation of the UJAC print module's XML tag set. tag Changes the document font by adding the 'bold' attribute to the current font. tag Prints a barcode. type: The barcode type, supported

More information

CPSC Tutorial 9 Blend & Animations

CPSC Tutorial 9 Blend & Animations CPSC 481 - Tutorial 9 Blend & Animations (based on previous tutorials by Alice Thudt, Fateme Rajabiyazdi, David Ledo, Brennan Jones, and Sowmya Somanath) Today Blend & Animations Using Blend Hands on example

More information

Name of Experiment: Country Database

Name of Experiment: Country Database Name of Experiment: Country Database Exp No: DB2 Background: Student should have basic knowledge of C#. Summary: Database Management is one of the key factors in any Mobile application development framework.

More information

ArcGIS Pro SDK for.net UI Design for Accessibility. Charles Macleod

ArcGIS Pro SDK for.net UI Design for Accessibility. Charles Macleod ArcGIS Pro SDK for.net UI Design for Accessibility Charles Macleod Overview Styling - Light, Dark, High Contrast Accessibility Custom Styling* Add-in Styling Since1.4: Light and Dark Theme and High Contrast

More information

.NET Framework, C# and a little bit of WPF. Ivan Bernabucci University Roma TRE

.NET Framework, C# and a little bit of WPF. Ivan Bernabucci University Roma TRE 2 Ivan Bernabucci University Roma TRE i.bernabucci@uniroma3.it OVERVIEW What is.net? What is FCL? What is CLR? What is C#? Basic Expressions and Operators Creating Project with Visual Studio Exploring

More information

Hands-On Lab. Sensors -.NET. Lab version: Last updated: 12/3/2010

Hands-On Lab. Sensors -.NET. Lab version: Last updated: 12/3/2010 Hands-On Lab Sensors -.NET Lab version: 1.0.0 Last updated: 12/3/2010 CONTENTS OVERVIEW... 3 EXERCISE 1: INTEGRATING THE SENSOR API INTO A WPF APPLICATION... 5 Task 1 Prepare a WPF Project for Sensor Integration...

More information

Wolf. Responsive Website Designer. Mac Edition User Guide

Wolf. Responsive Website Designer. Mac Edition User Guide Wolf Responsive Website Designer Mac Edition User Guide Version 2.10.3 Table of Contents What is Wolf Website Designer? Editor overview Save and open website Create responsive layout How to create responsive

More information

This tutorial is designed for software developers who want to learn how to develop quality applications with clean structure of code.

This tutorial is designed for software developers who want to learn how to develop quality applications with clean structure of code. About the Tutorial Every good developer wants and tries to create the most sophisticated applications to delight their users. Most of the times, developers achieve this on the first release of the application.

More information

Easy Graphical User Interfaces

Easy Graphical User Interfaces Easy Graphical User Interfaces with breezypythongui Types of User Interfaces GUI (graphical user interface) TUI (terminal-based user interface) UI Inputs Outputs Computation Terminal-Based User Interface

More information

WPF Viewer for Reporting Services 2008/2012 Getting Started

WPF Viewer for Reporting Services 2008/2012 Getting Started WPF Viewer for Reporting Services 2008/2012 Getting Started Last modified on: July 9, 2012 Table of Content Introduction... 3 Prerequisites... 3 Creating application using Microsoft SQL 2008/2008 R2 /2012

More information

IST311. Advanced Issues in OOP: Inheritance and Polymorphism

IST311. Advanced Issues in OOP: Inheritance and Polymorphism IST311 Advanced Issues in OOP: Inheritance and Polymorphism IST311/602 Cleveland State University Prof. Victor Matos Adapted from: Introduction to Java Programming: Comprehensive Version, Eighth Edition

More information

Murach s Beginning Java with Eclipse

Murach s Beginning Java with Eclipse Murach s Beginning Java with Eclipse Introduction xv Section 1 Get started right Chapter 1 An introduction to Java programming 3 Chapter 2 How to start writing Java code 33 Chapter 3 How to use classes

More information

SERIOUS ABOUT SOFTWARE. Qt Core features. Timo Strömmer, May 26,

SERIOUS ABOUT SOFTWARE. Qt Core features. Timo Strömmer, May 26, SERIOUS ABOUT SOFTWARE Qt Core features Timo Strömmer, May 26, 2010 1 Contents C++ refresher Core features Object model Signals & slots Event loop Shared data Strings Containers Private implementation

More information

DOT.NET MODULE 6: SILVERLIGHT

DOT.NET MODULE 6: SILVERLIGHT UNIT 1 Introducing Silverlight DOT.NET MODULE 6: SILVERLIGHT 1. Silverlight and Visual Studio 2. Understanding Silverlight Websites 3. Creating a Stand-Alone Silverlight Project 4. Creating a Simple Silverlight

More information

Quick Start - WPF. Chapter 4. Table of Contents

Quick Start - WPF. Chapter 4. Table of Contents Chapter 4 Quick Start - WPF Table of Contents Chapter 4... 4-1 Quick Start - WPF... 4-1 Using Haystack Generated Code in WPF... 4-2 Quick Start for WPF Applications... 4-2 Add New Haystack Project for

More information

First Name: AITI 2004: Exam 2 July 19, 2004

First Name: AITI 2004: Exam 2 July 19, 2004 First Name: AITI 2004: Exam 2 July 19, 2004 Last Name: JSP Track Read Instructions Carefully! This is a 3 hour closed book exam. No calculators are allowed. Please write clearly if we cannot understand

More information

XML Based Layout Managers

XML Based Layout Managers XML Based Layout Managers Danijel Radošević 1, Denis Bračun 2, Nikola Mrvac 3 1,2 Faculty of organization and Informatics, Pavlinska 2, Varaždin, Croatia danijel.radosevic@foi.hr denis.bracun@foi.hr 3

More information

Exam sell. Higher Quality Better Service! Certified IT practice exam authority.

Exam sell. Higher Quality Better Service! Certified IT practice exam authority. Higher Quality Better Service! Exam sell Certified IT practice exam authority Accurate study guides, High passing rate! Exam Sell provides update free of charge in one year! http://www.examsell.com Exam

More information

Java Programming Lecture 6

Java Programming Lecture 6 Java Programming Lecture 6 Alice E. Fischer Feb 15, 2013 Java Programming - L6... 1/32 Dialog Boxes Class Derivation The First Swing Programs: Snow and Moving The Second Swing Program: Smile Swing Components

More information

Week 6: First XAML Control Exercise

Week 6: First XAML Control Exercise BCIS 4650 Week 6: First XAML Control Exercise The controls you will use are: Blank App (Universal Windows), which contains a Grid control by default StackPanel (acts as a container for CheckBoxes and RadioButtons)

More information

Topics. Java arrays. Definition. Data Structures and Information Systems Part 1: Data Structures. Lecture 3: Arrays (1)

Topics. Java arrays. Definition. Data Structures and Information Systems Part 1: Data Structures. Lecture 3: Arrays (1) Topics Data Structures and Information Systems Part 1: Data Structures Michele Zito Lecture 3: Arrays (1) Data structure definition: arrays. Java arrays creation access Primitive types and reference types

More information

Http://www.passcert.com Exam : 070-502 Title : TS: Microsoft.NET Framework 3.5 Windows Presentation Foundation Version : Demo 1 / 39 1. You are creating a Windows Presentation Foundation application by

More information

Introduction. Part I: Silverlight Fundamentals for ASP.NET Developers 1

Introduction. Part I: Silverlight Fundamentals for ASP.NET Developers 1 Introduction xxi Part I: Silverlight Fundamentals for ASP.NET Developers 1 Chapter 1: Silverlight in a Nutshell 3 Uphill Struggle 3 Rich Client or Web Reach? 4 Silverlight Steps In 4 The Impact of Silverlight

More information

CSC 355 PROJECT 4 NETWORKED TIC TAC TOE WITH WPF INTERFACE

CSC 355 PROJECT 4 NETWORKED TIC TAC TOE WITH WPF INTERFACE CSC 355 PROJECT 4 NETWORKED TIC TAC TOE WITH WPF INTERFACE GODFREY MUGANDA In this project, you will write a networked application for playing Tic Tac Toe. The application will use the.net socket classes

More information

Workspace Desktop Edition Developer's Guide. Customize Views and Regions

Workspace Desktop Edition Developer's Guide. Customize Views and Regions Workspace Desktop Edition Developer's Guide Customize Views and Regions 11/27/2017 Customize Views and Regions Purpose: To provide information about customizable views and their regions. Contents 1 Customize

More information

Visual Studio.NET.NET Framework. Web Services Web Forms Windows Forms. Data and XML classes. Framework Base Classes. Common Language Runtime

Visual Studio.NET.NET Framework. Web Services Web Forms Windows Forms. Data and XML classes. Framework Base Classes. Common Language Runtime Intro C# Intro C# 1 Microsoft's.NET platform and Framework.NET Enterprise Servers Visual Studio.NET.NET Framework.NET Building Block Services Operating system on servers, desktop, and devices Web Services

More information

Object-Oriented Programming

Object-Oriented Programming iuliana@cs.ubbcluj.ro Babes-Bolyai University 2018 1 / 33 Overview 1 2 3 4 5 6 2 / 33 I Qt is a cross-platform application and UI framework in C++. Using Qt, one can write GUI applications once and deploy

More information

Accurate study guides, High passing rate! IT TEST BOOK QUESTION & ANSWER. Ittestbook provides update free of charge in one year!

Accurate study guides, High passing rate! IT TEST BOOK QUESTION & ANSWER. Ittestbook provides update free of charge in one year! IT TEST BOOK QUESTION & ANSWER Ittestbook provides update free of charge in one year! Accurate study guides, High passing rate! Exam : 070-506 Title : TS: Microsoft Silverlight 4, Development Version :

More information

STYLES AND BEHAVIORS

STYLES AND BEHAVIORS STYLES AND BEHAVIORS Chapter 11 of Pro WPF : By Matthew MacDonald Assist Lect. Wadhah R. Baiee. College of IT Univ. of Babylon - 2014 Introduction Styles They are an essential tool for organizing and reusing

More information

First Name: AITI 2004: Exam 2 July 19, 2004

First Name: AITI 2004: Exam 2 July 19, 2004 First Name: AITI 2004: Exam 2 July 19, 2004 Last Name: Standard Track Read Instructions Carefully! This is a 3 hour closed book exam. No calculators are allowed. Please write clearly if we cannot understand

More information

Make a Website. A complex guide to building a website through continuing the fundamentals of HTML & CSS. Created by Michael Parekh 1

Make a Website. A complex guide to building a website through continuing the fundamentals of HTML & CSS. Created by Michael Parekh 1 Make a Website A complex guide to building a website through continuing the fundamentals of HTML & CSS. Created by Michael Parekh 1 Overview Course outcome: You'll build four simple websites using web

More information

Migrate Your Skills to Microsoft.NET Framework 2.0 and 3.0 using Visual Studio 2005 (C#)

Migrate Your Skills to Microsoft.NET Framework 2.0 and 3.0 using Visual Studio 2005 (C#) Migrate Your Skills to Microsoft.NET Framework 2.0 and 3.0 using Visual Studio 2005 (C#) Course Length: 5 Days Course Overview This instructor-led course teaches developers to gain in-depth guidance on

More information