= Chapter 3 Notes =

'''Deepter into text'''

== Summary ==

So much ado about Labels and the text in them.

=== Programming Concepts Summary ===

|| '''Concept''' || '''Page''' ||
|| Text wraps automatically in labels || 42 ||
|| Text & Background Colors || 44  ||
|| Coloring || 46-47 ||
|| Changing the Application Color Scheme || 50 ||
|| Font sizes and attributes - includes {{{FontFamily, FontSize, FontAttributes}}} || 51 ||
|| Formatting text in a {{{Span}}} is similar to formatting text in html || 53 ||

== Programs ==

=== Program Baskervilles ===

Page 41.

Concepts:

 1. Shows that text wraps inside a label be default.
 1. Shows the use of Device.OnPlatform for padding.

Classes: 

 1. Label is demonstrated.

=== Greetings from the previous Chapter ===

Pages 44, 45, 52.

Concepts

 1. TextAlignment
 1. BackgroundColor
 1. TextColor
 1. FontAttributes

No new classes. 

=== VariableFormatedText ===

Pages 53, 54

Concepts:

 1. FontSize (named)
 1. FontAttributes (bold, italic...)

Classes:

 1. NamedSize - is related to the font sizes
 1. Device.GetNamedSize(NamedSize.Large, typeof(Label)) returns an appropriate font size for the platform.
 1. FontAttributes e.g. FontAttributes.Bold

=== VariableFormatedParagraph ===

Pages 55, 56

Concepts:

Demonstrates using a "Span" to format text in a "FormattedText" property of a Label.

No New Classes here

=== NamedFontSizesPage ===

Pages 57-58

Concepts:

Demonstrates the different sizes on different platforms by looping through them and adding spans for each size in a label that includes:

 1. Named Size.
 1. Device dependent actual size in text
 1. A device dependent NewLine character.

Classes:

 1. Environment allows us to get the device dependent NewLine character.