SlideShare a Scribd company logo
1 of 69
Binding Lists in WPF ,[object Object],[object Object],[object Object],[object Object],[object Object]
Table of Contents ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Table of Contents (2) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Complex Data Binding Binding to a Collection of Items
Complex  B inding ,[object Object],// Create an alias for a generic type so that we // can create a list of Person objects in XAML class People : List<Person> { } <!-- Declaring a collection in XAML -->  <local:People x:Key=&quot;Family&quot;> <local:Person Name=&quot;Tom&quot; Age=&quot;11&quot; /> <local:Person Name=&quot;John&quot; Age=&quot;12&quot; /> <local:Person Name=&quot;Melissa&quot; Age=&quot;38&quot; /> </local:People>
Complex  B inding  (2) ,[object Object],[object Object],<Grid DataContext=&quot;{StaticResource Family}&quot;> … <TextBlock …>Name:</TextBlock> <TextBox Text=&quot;{Binding Path=Name}&quot; … /> <TextBox Text=&quot;{Binding Path=Age}&quot; Foreground=&quot;{Binding Path=Age, Converter=…}&quot; … />
Complex Data Binding Live Demo
Accessing the &quot;Current Item&quot;
Accessing the &quot;Current Item&quot; ,[object Object],[object Object]
Accessing the &quot;Current Item&quot; (3) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Accessing the &quot;Current Item&quot; (2) ,[object Object],public partial class MainWindow : Window { … private void birthdayButton_Click(object sender, RoutedEventArgs e) { People people = (People)this.FindResource(&quot;Family&quot;); ICollectionView view = CollectionViewSource.GetDefaultView(people); Person person = (Person) view.CurrentItem ; ++person.Age; MessageBox.Show(person.Age.ToString()); } }
Navigating Between Items ,[object Object],[object Object],ICollectionView GetFamilyView() { People people =(People)this.FindResource(&quot;Family&quot;); return CollectionViewSource.GetDefaultView(people); } private void buttonBack_Click(object sender, RoutedEventArgs e) { ICollectionView view = GetFamilyView(); view.MoveCurrentToPrevious(); if (view.IsCurrentBeforeFirst)  view.MoveCurrentToFirst(); }
Navigating Between Items Live Demo
Binding List Controls DisplayMemberPath  and  SelectedValuePath
Binding List Controls ,[object Object],[object Object],[object Object],[object Object],[object Object]
DisplayMemberPath ,[object Object],[object Object],<ListBox ItemsSource=&quot;{Binding}&quot; DisplayMemberPath=&quot;Name&quot; IsSynchronizedWithCurrentItem=&quot;True&quot; /> <!--The result is-->
SelectedValuePath ,[object Object],[object Object],<ListBox Name=&quot;ListBoxPeople&quot; ItemsSource=&quot;{Binding}&quot; DisplayMemberPath=&quot;Name&quot; SelectedValuePath=&quot;Age&quot; /> private void ListBoxPeople_SelectionChanged( object sender, SelectionChangedEventArgs e) { int index = ListBoxPerson.SelectedIndex; if (index < 0) { return; } Person item = (Person) ListBoxPerson.SelectedItem; int value = (int) ListBoxPerson.SelectedValue; … }
DisplayMemberPath  and  SelectedValuePath Live Demo
Using Look-up Bindings
Using Look-up Bindings ,[object Object],[object Object],public class NamedAge { public string NameForAge { get; set; } public int AgeId { get; set; } } class NamedAges : List<NamedAge> { }
Using Look-up Bindings (2) ,[object Object],[object Object],<local:NamedAges x:Key=&quot;NamedAgeLookup&quot;> <local:NamedAge NameForAge=&quot;zero&quot; AgeId=&quot;0&quot; /> <local:NamedAge NameForAge=&quot;one&quot; AgeId=&quot;1&quot; /> </local:NamedAges> <ComboBox Name=&quot;ComboBoxNumbers&quot; ItemsSource= &quot;{Binding Source={StaticResource NamedAgeLookup}}&quot; DisplayMemberPath=&quot;NameForAge&quot; SelectedValuePath=&quot;AgeId&quot; SelectedValue=&quot;{Binding Path=Age}&quot; />
Using Look-up Bindings Live Demo
Using Data Templates
Using Data Templates ,[object Object],[object Object],[object Object],[object Object],[object Object]
Using Data Templates (2) ,[object Object],<ListBox ItemsSource=&quot;{Binding}&quot;> <ListBox.ItemTemplate> <DataTemplate> <TextBlock> <TextBlock Text=&quot;{Binding Path=Name}&quot; /> (age:  <TextBlock Text=&quot;{Binding Path=Age}&quot; Foreground=&quot;{Binding Path=Age, Converter={StaticResource ageConverter}}&quot; />) </TextBlock> </DataTemplate> </ListBox.ItemTemplate> </ListBox>
Using Data Templates (2) ,[object Object],[object Object],[object Object]
Sorting Items
Sorting Items ,[object Object],[object Object],[object Object],[object Object]
Sorting Items (2) ,[object Object],private void buttonSort_Click (object sender, RoutedEventArgs e)  { ICollectionView view = GetFamilyView(); if (view.SortDescriptions.Count == 0) { view.SortDescriptions.Add( new SortDescription(&quot;Name&quot;, ListSortDirection.Ascending)); view.SortDescriptions.Add( new SortDescription(&quot;Age&quot;, ListSortDirection.Descending)); } else view.SortDescriptions.Clear(); }
Sorting Items Live Demo
Filtering
Filtering ,[object Object],[object Object],[object Object],private void buttonFilter_Click(object sender, RoutedEventArgs e) { ICollectionView view = GetFamilyView();  // the example continues
Filtering (2) if (view.Filter == null)  { view.Filter = delegate(object item) { return ((Person)item).Age >= 25; }; } else { view.Filter = null; } }  // The result is:
Grouping
Grouping ,[object Object],[object Object],[object Object],if (view.GroupDescriptions.Count == 0)  { view.GroupDescriptions.Add( new PropertyGroupDescription(&quot;Age&quot;)); } else  { view.GroupDescriptions.Clear(); }
Grouping (2) ,[object Object],[object Object],[object Object],[object Object],<ListBox … ItemsSource=&quot;{Binding}&quot; > <ListBox.GroupStyle> <x:Static Member=&quot;GroupStyle.Default&quot; /> </ListBox.GroupStyle> </ListBox>
Filtering and Grouping Live Demo
Declarative Sorting and Grouping
Declarative Sorting and Grouping ,[object Object],[object Object],[object Object],[object Object],xmlns:compModel=&quot;clr-namespace:System.ComponentModel; assembly=WindowsBase&quot;  xmlns:data=&quot;clr-namespace:System.Windows.Data;assembly= PresentationFramework&quot;>
Declarative Sorting and Grouping (2) <CollectionViewSource x:Key=&quot;SortedGroupedFamily&quot; Source=&quot;{StaticResource Family}&quot;> <CollectionViewSource.SortDescriptions> <compModel:SortDescription PropertyName=&quot;Name&quot; Direction=&quot;Ascending&quot; /> <compModel:SortDescription PropertyName=&quot;Age&quot; Direction=&quot;Descending&quot; /> </CollectionViewSource.SortDescriptions> <CollectionViewSource.GroupDescriptions> <data:PropertyGroupDescription PropertyName=&quot;Age&quot; Converter=&quot;{StaticResource ageConverter}&quot; /> <data:PropertyGroupDescription PropertyName=&quot;Age&quot; /> </CollectionViewSource.GroupDescriptions> </CollectionViewSource>
Declarative Sorting and Grouping Live Demo
Data Source Providers
Object Data Provider ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Object Data Provider  – Example ,[object Object],[object Object],public class Person : INotifyPropertyChanged { … } public class People : ObservableCollection<Person> {} public class RemotePeopleLoader  { public People LoadPeople() { // Load people from somewhere People people = new People( ); … return people; } … }
Object Data Provider  – Example (2) ,[object Object],[object Object],[object Object],<Window.Resources>  ... <ObjectDataProvider x:Key=&quot;Family&quot; ObjectType=&quot;{x:Type local:RemotePeopleLoader}&quot; MethodName=&quot;LoadPeople&quot; /> </Window.Resources>
Binding to Relational Data ,[object Object],[object Object],[object Object],[object Object],DataClassesPeopleDataContext dataContextPeople =  new DataClassesPeopleDataContext();
Binding to Relational Data (2) ,[object Object],<Window.Resources> <DataTemplate x:Key=&quot;DataTemplatePersonName&quot;> <TextBlock Text=&quot;{Binding Path=PersonName}&quot;/> </DataTemplate> </Window.Resources> ... <ListBox Name=&quot;ListBoxPeople&quot; ItemTemplate= &quot;{StaticResource DataTemplatePersonName }&quot;/>
Binding to Relational Data (3) ,[object Object],[object Object],People newPerson = new People(); newPerson.PersonName = TextBoxAdd.Text;  dataContexPeople.Peoples.InsertOnSubmit(newPerson); dataContexPeople.SubmitChanges();
Binding to Relational Data Live Demo
XML Data Source Provider ,[object Object],[object Object],<Window.Resources> <XmlDataProvider x:Key=&quot;Family&quot; Source=&quot;family.xml&quot; XPath=&quot;/sb:Family/sb:Person&quot;> <XmlDataProvider.XmlNamespaceManager> <XmlNamespaceMappingCollection> <XmlNamespaceMapping Prefix=&quot;sb&quot;  Uri=&quot;http://sellsbrothers.com&quot; /> </XmlNamespaceMappingCollection> </XmlDataProvider.XmlNamespaceManager> </XmlDataProvider>  <!--the example continues-->
XML Data Source Provider (2) ,[object Object],[object Object],… <StackPanel Orientation=&quot;Horizontal&quot;> <TextBlock Text=&quot;{Binding XPath=@Name}&quot; /> <TextBlock Text=&quot; (age: &quot; /> <TextBlock Text=&quot;{Binding XPath=@Age}&quot; Foreground=&quot;{Binding XPath=@Age, Converter= {StaticResource ageConverter}}&quot; /> <TextBlock Text=&quot;)&quot; /> </StackPanel> …
XML Data Source Provider (3) ,[object Object],[object Object],[object Object],void birthdayButton_Click(object sender, RoutedEventArgs e) { ICollectionView view = GetFamilyView( ); XmlElement person = (XmlElement)view.CurrentItem; // the example continues
XML Data Source Provider (4) person.SetAttribute(&quot;Age&quot;, (int.Parse( person.Attributes[&quot;Age&quot;].Value) + 1).ToString( ));  MessageBox.Show( string.Format(&quot;Happy Birthday, {0}, age {1}!&quot;, person.Attributes[&quot;Name&quot;].Value, person.Attributes[&quot;Age&quot;].Value), &quot;Birthday&quot;); } … void groupButton_Click(object sender, RoutedEventArgs e) { ICollectionView view = GetFamilyView( ); if( view.GroupDescriptions.Count == 0 )  { view.GroupDescriptions.Add(new PropertyGroupDescription(&quot;@Age&quot;)); } else { view.GroupDescriptions.Clear(); } }
XML Data Source Provider Live Demo
Master-Detail Binding
Master-Details Binding ,[object Object],[object Object],[object Object],[object Object],[object Object]
Master-Details Binding (2) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Master-Details Binding – Example ,[object Object],<Window.Resources> <local:Families x:Key=&quot;Families&quot;> <local:Family FamilyName=&quot;Piyandetata&quot;> <local:Family.Members> <local:People> <local:Person Name=&quot;Joro Vodkata&quot; Age=&quot;21&quot; /> … </local:People> </local:Family.Members> </local:Family> <local:Family FamilyName=&quot;Addams&quot;> <local:Family.Members> <local:People> <local:Person Name=&quot;Uncle Fester&quot; Age=&quot;135&quot; /> … </local:Families> </Window.Resources>
Master-Details Binding –  Example (2) ,[object Object],<Window.Resources> <local:Families x:Key=&quot;Families&quot;>…</local:Families> </Window.Resources> <Grid DataContext=&quot;{StaticResource Families}&quot;> … <!-- Families Column --> <TextBlock Grid.Row=&quot;0&quot; Grid.Column=&quot;0&quot;>Families:</TextBlock> <ListBox Grid.Row=&quot;1&quot; Grid.Column=&quot;0&quot; IsSynchronizedWithCurrentItem=&quot;True&quot; ItemsSource=&quot;{Binding}&quot;> <ListBox.ItemTemplate> <DataTemplate> <TextBlock Text=&quot;{Binding Path=FamilyName}&quot; /> </DataTemplate> </ListBox.ItemTemplate> </ListBox>
Master-Details Binding –  Example (3) ,[object Object],<Grid DataContext=&quot;{StaticResource Families}&quot;> ... …  <!-- Members Column --> <StackPanel Grid.Row=&quot;0&quot; Grid.Column=&quot;1&quot;  Orientation=&quot;Horizontal&quot;> <TextBlock Text=&quot;{Binding Path=FamilyName}&quot; /> <TextBlock Text=&quot; Family Members:&quot; /> </StackPanel> <ListBox Grid.Row=&quot;1&quot; Grid.Column=&quot;1&quot; IsSynchronizedWithCurrentItem=&quot;True&quot; ItemsSource=&quot;{Binding Path=Members}&quot; > <ListBox.ItemTemplate> <DataTemplate> <StackPanel Orientation=&quot;Horizontal&quot;> <TextBlock Text=&quot;{Binding Path=Name}&quot; /> <TextBlock Text=&quot; (age: &quot; /> <TextBlock Text=&quot;{Binding Path=Age}&quot; /> <TextBlock Text=&quot; )&quot; /> …
Master-Details Binding Live Demo
Hierarchical Binding
Hierarchical Binding ,[object Object],[object Object],[object Object],[object Object],[object Object]
Hierarchical Binding (2) ,[object Object],[object Object],<DataTemplate DataType=&quot;{x:Type local:Family}&quot;> <TextBlock Text=&quot;{Binding Path=FamilyName}&quot; /> </DataTemplate> </Window.Resources> … <TreeView DataContext=&quot;{StaticResource Families}&quot;> <TreeViewItem ItemsSource=&quot;{Binding}&quot;  Header=&quot;Families&quot; /> </TreeView>
Hierarchical Binding (3) ,[object Object],[object Object],<HierarchicalDataTemplate DataType=&quot;{x:Type local:Family}&quot; ItemsSource=&quot;{Binding Path=Members}&quot;> <TextBlock Text=&quot;{Binding Path=FamilyName}&quot; /> </HierarchicalDataTemplate> <HierarchicalDataTemplate DataType=&quot;{x:Type local:Person}&quot; ItemsSource=&quot;{Binding Path=Traits}&quot;> <TextBlock> <TextBlock Text=&quot;{Binding Path=Name}&quot; /> (age: <TextBlock Text=&quot;{Binding Path=Age}&quot; />) </TextBlock> </HierarchicalDataTemplate>
Binding Lists ,[object Object],http://academy.telerik.com
Exercises ,[object Object],[object Object]
Exercises (2) ,[object Object],Design a form to view products by ID and bind all controls to their relevant columns from the database tables.
Exercises (3) ,[object Object],[object Object]

More Related Content

What's hot (20)

DOM and Events
DOM and EventsDOM and Events
DOM and Events
 
Tutorial Solution
Tutorial SolutionTutorial Solution
Tutorial Solution
 
Java script
Java scriptJava script
Java script
 
Learn javascript easy steps
Learn javascript easy stepsLearn javascript easy steps
Learn javascript easy steps
 
Java Persistence API
Java Persistence APIJava Persistence API
Java Persistence API
 
Intro To Hibernate
Intro To HibernateIntro To Hibernate
Intro To Hibernate
 
Web 6 | JavaScript DOM
Web 6 | JavaScript DOMWeb 6 | JavaScript DOM
Web 6 | JavaScript DOM
 
Web 5 | JavaScript Events
Web 5 | JavaScript EventsWeb 5 | JavaScript Events
Web 5 | JavaScript Events
 
XAML and WPF - Dinko Jakovljević
XAML and WPF - Dinko JakovljevićXAML and WPF - Dinko Jakovljević
XAML and WPF - Dinko Jakovljević
 
Ejb3 Dan Hinojosa
Ejb3 Dan HinojosaEjb3 Dan Hinojosa
Ejb3 Dan Hinojosa
 
Hibernate
HibernateHibernate
Hibernate
 
Javascript dom
Javascript domJavascript dom
Javascript dom
 
Hibernate working with criteria- Basic Introduction
Hibernate working with criteria- Basic IntroductionHibernate working with criteria- Basic Introduction
Hibernate working with criteria- Basic Introduction
 
jQuery -Chapter 2 - Selectors and Events
jQuery -Chapter 2 - Selectors and Events jQuery -Chapter 2 - Selectors and Events
jQuery -Chapter 2 - Selectors and Events
 
AJAX
AJAXAJAX
AJAX
 
Vaadin JPAContainer
Vaadin JPAContainerVaadin JPAContainer
Vaadin JPAContainer
 
INTRODUCTION TO CLIENT SIDE PROGRAMMING
INTRODUCTION TO CLIENT SIDE PROGRAMMINGINTRODUCTION TO CLIENT SIDE PROGRAMMING
INTRODUCTION TO CLIENT SIDE PROGRAMMING
 
Hibernate An Introduction
Hibernate An IntroductionHibernate An Introduction
Hibernate An Introduction
 
Sharing Data Between Angular Components
Sharing Data Between Angular ComponentsSharing Data Between Angular Components
Sharing Data Between Angular Components
 
jQuery - Chapter 3 - Effects
jQuery - Chapter 3 - Effects  jQuery - Chapter 3 - Effects
jQuery - Chapter 3 - Effects
 

Viewers also liked

Viewers also liked (13)

CSS 3
CSS 3CSS 3
CSS 3
 
Slice and Dice
Slice and DiceSlice and Dice
Slice and Dice
 
CSS Presentation
CSS PresentationCSS Presentation
CSS Presentation
 
Data Access with ADO.Net
Data Access with ADO.NetData Access with ADO.Net
Data Access with ADO.Net
 
WPF Templating and Styling
WPF Templating and StylingWPF Templating and Styling
WPF Templating and Styling
 
Model View ViewModel
Model View ViewModelModel View ViewModel
Model View ViewModel
 
Web Design Concepts
Web Design ConceptsWeb Design Concepts
Web Design Concepts
 
Web design Tools
Web design ToolsWeb design Tools
Web design Tools
 
Ado.net
Ado.netAdo.net
Ado.net
 
HTML 5
HTML 5HTML 5
HTML 5
 
ASP.NET 09 - ADO.NET
ASP.NET 09 - ADO.NETASP.NET 09 - ADO.NET
ASP.NET 09 - ADO.NET
 
For Beginers - ADO.Net
For Beginers - ADO.NetFor Beginers - ADO.Net
For Beginers - ADO.Net
 
ADO.NET -database connection
ADO.NET -database connectionADO.NET -database connection
ADO.NET -database connection
 

Similar to Binding Lists in WPF - Sort, Filter, Group Data

Configuring Data Binding part2 ABTO Software Lecture Korotchyn
Configuring Data Binding part2 ABTO Software Lecture KorotchynConfiguring Data Binding part2 ABTO Software Lecture Korotchyn
Configuring Data Binding part2 ABTO Software Lecture KorotchynABTO Software
 
ASP.NET 08 - Data Binding And Representation
ASP.NET 08 - Data Binding And RepresentationASP.NET 08 - Data Binding And Representation
ASP.NET 08 - Data Binding And RepresentationRandy Connolly
 
Java: Objects and Object References
Java: Objects and Object ReferencesJava: Objects and Object References
Java: Objects and Object ReferencesTareq Hasan
 
Introduction to Spring MVC
Introduction to Spring MVCIntroduction to Spring MVC
Introduction to Spring MVCRichard Paul
 
Handling tree control events
Handling tree control eventsHandling tree control events
Handling tree control eventsHemakumar.S
 
Configuring Data Binding part1 ABTO Software Lecture Korotchyn
Configuring Data Binding part1 ABTO Software Lecture KorotchynConfiguring Data Binding part1 ABTO Software Lecture Korotchyn
Configuring Data Binding part1 ABTO Software Lecture KorotchynABTO Software
 
Javascript Experiment
Javascript ExperimentJavascript Experiment
Javascript Experimentwgamboa
 
1 MVC – Ajax and Modal Views AJAX stands for Asynch.docx
1  MVC – Ajax and Modal Views AJAX stands for Asynch.docx1  MVC – Ajax and Modal Views AJAX stands for Asynch.docx
1 MVC – Ajax and Modal Views AJAX stands for Asynch.docxhoney725342
 
Intake 38 data access 5
Intake 38 data access 5Intake 38 data access 5
Intake 38 data access 5Mahmoud Ouf
 
Data Binding Intro (Windows 8)
Data Binding Intro (Windows 8)Data Binding Intro (Windows 8)
Data Binding Intro (Windows 8)Gilbok Lee
 
Silverlight week5
Silverlight week5Silverlight week5
Silverlight week5iedotnetug
 
Micro-ORM Introduction - Don't overcomplicate
Micro-ORM Introduction - Don't overcomplicateMicro-ORM Introduction - Don't overcomplicate
Micro-ORM Introduction - Don't overcomplicateKiev ALT.NET
 

Similar to Binding Lists in WPF - Sort, Filter, Group Data (20)

Wpf Introduction
Wpf IntroductionWpf Introduction
Wpf Introduction
 
displaytag
displaytagdisplaytag
displaytag
 
Dev308
Dev308Dev308
Dev308
 
Configuring Data Binding part2 ABTO Software Lecture Korotchyn
Configuring Data Binding part2 ABTO Software Lecture KorotchynConfiguring Data Binding part2 ABTO Software Lecture Korotchyn
Configuring Data Binding part2 ABTO Software Lecture Korotchyn
 
Presentation
PresentationPresentation
Presentation
 
ASP.NET 08 - Data Binding And Representation
ASP.NET 08 - Data Binding And RepresentationASP.NET 08 - Data Binding And Representation
ASP.NET 08 - Data Binding And Representation
 
Java: Objects and Object References
Java: Objects and Object ReferencesJava: Objects and Object References
Java: Objects and Object References
 
Introduction to Spring MVC
Introduction to Spring MVCIntroduction to Spring MVC
Introduction to Spring MVC
 
Handling tree control events
Handling tree control eventsHandling tree control events
Handling tree control events
 
Configuring Data Binding part1 ABTO Software Lecture Korotchyn
Configuring Data Binding part1 ABTO Software Lecture KorotchynConfiguring Data Binding part1 ABTO Software Lecture Korotchyn
Configuring Data Binding part1 ABTO Software Lecture Korotchyn
 
Javascript Experiment
Javascript ExperimentJavascript Experiment
Javascript Experiment
 
1 MVC – Ajax and Modal Views AJAX stands for Asynch.docx
1  MVC – Ajax and Modal Views AJAX stands for Asynch.docx1  MVC – Ajax and Modal Views AJAX stands for Asynch.docx
1 MVC – Ajax and Modal Views AJAX stands for Asynch.docx
 
J Query
J QueryJ Query
J Query
 
Intake 38 data access 5
Intake 38 data access 5Intake 38 data access 5
Intake 38 data access 5
 
Data Binding Intro (Windows 8)
Data Binding Intro (Windows 8)Data Binding Intro (Windows 8)
Data Binding Intro (Windows 8)
 
Element
ElementElement
Element
 
Silverlight week5
Silverlight week5Silverlight week5
Silverlight week5
 
2310 b 12
2310 b 122310 b 12
2310 b 12
 
Micro-ORM Introduction - Don't overcomplicate
Micro-ORM Introduction - Don't overcomplicateMicro-ORM Introduction - Don't overcomplicate
Micro-ORM Introduction - Don't overcomplicate
 
J Query Public
J Query PublicJ Query Public
J Query Public
 

More from Doncho Minkov

More from Doncho Minkov (18)

HTML 5 Tables and Forms
HTML 5 Tables and FormsHTML 5 Tables and Forms
HTML 5 Tables and Forms
 
CSS Overview
CSS OverviewCSS Overview
CSS Overview
 
CSS Layout
CSS LayoutCSS Layout
CSS Layout
 
Adobe Photoshop
Adobe PhotoshopAdobe Photoshop
Adobe Photoshop
 
Introduction to XAML and WPF
Introduction to XAML and WPFIntroduction to XAML and WPF
Introduction to XAML and WPF
 
WPF Layout Containers
WPF Layout ContainersWPF Layout Containers
WPF Layout Containers
 
WPF Graphics and Animations
WPF Graphics and AnimationsWPF Graphics and Animations
WPF Graphics and Animations
 
Introduction to Cross-platform Mobile Development Course
Introduction to Cross-platform Mobile Development CourseIntroduction to Cross-platform Mobile Development Course
Introduction to Cross-platform Mobile Development Course
 
HTML Fundamentals
HTML FundamentalsHTML Fundamentals
HTML Fundamentals
 
Tables and Forms in HTML
Tables and Forms in HTMLTables and Forms in HTML
Tables and Forms in HTML
 
HTML5
HTML5HTML5
HTML5
 
CSS Part I
CSS Part ICSS Part I
CSS Part I
 
CSS Part II
CSS Part IICSS Part II
CSS Part II
 
CSS3
CSS3CSS3
CSS3
 
Workshop Usability
Workshop UsabilityWorkshop Usability
Workshop Usability
 
JavaScript
JavaScriptJavaScript
JavaScript
 
JavaScript OOP
JavaScript OOPJavaScript OOP
JavaScript OOP
 
jQuery Fundamentals
jQuery FundamentalsjQuery Fundamentals
jQuery Fundamentals
 

Recently uploaded

Monte Carlo simulation : Simulation using MCSM
Monte Carlo simulation : Simulation using MCSMMonte Carlo simulation : Simulation using MCSM
Monte Carlo simulation : Simulation using MCSMRavindra Nath Shukla
 
VIP Kolkata Call Girl Howrah 👉 8250192130 Available With Room
VIP Kolkata Call Girl Howrah 👉 8250192130  Available With RoomVIP Kolkata Call Girl Howrah 👉 8250192130  Available With Room
VIP Kolkata Call Girl Howrah 👉 8250192130 Available With Roomdivyansh0kumar0
 
2024 Numerator Consumer Study of Cannabis Usage
2024 Numerator Consumer Study of Cannabis Usage2024 Numerator Consumer Study of Cannabis Usage
2024 Numerator Consumer Study of Cannabis UsageNeil Kimberley
 
Catalogue ONG NUOC PPR DE NHAT .pdf
Catalogue ONG NUOC PPR DE NHAT      .pdfCatalogue ONG NUOC PPR DE NHAT      .pdf
Catalogue ONG NUOC PPR DE NHAT .pdfOrient Homes
 
M.C Lodges -- Guest House in Jhang.
M.C Lodges --  Guest House in Jhang.M.C Lodges --  Guest House in Jhang.
M.C Lodges -- Guest House in Jhang.Aaiza Hassan
 
/:Call Girls In Jaypee Siddharth - 5 Star Hotel New Delhi ➥9990211544 Top Esc...
/:Call Girls In Jaypee Siddharth - 5 Star Hotel New Delhi ➥9990211544 Top Esc.../:Call Girls In Jaypee Siddharth - 5 Star Hotel New Delhi ➥9990211544 Top Esc...
/:Call Girls In Jaypee Siddharth - 5 Star Hotel New Delhi ➥9990211544 Top Esc...lizamodels9
 
Call Girls In Sikandarpur Gurgaon ❤️8860477959_Russian 100% Genuine Escorts I...
Call Girls In Sikandarpur Gurgaon ❤️8860477959_Russian 100% Genuine Escorts I...Call Girls In Sikandarpur Gurgaon ❤️8860477959_Russian 100% Genuine Escorts I...
Call Girls In Sikandarpur Gurgaon ❤️8860477959_Russian 100% Genuine Escorts I...lizamodels9
 
Call Girls In Sikandarpur Gurgaon ❤️8860477959_Russian 100% Genuine Escorts I...
Call Girls In Sikandarpur Gurgaon ❤️8860477959_Russian 100% Genuine Escorts I...Call Girls In Sikandarpur Gurgaon ❤️8860477959_Russian 100% Genuine Escorts I...
Call Girls In Sikandarpur Gurgaon ❤️8860477959_Russian 100% Genuine Escorts I...lizamodels9
 
Non Text Magic Studio Magic Design for Presentations L&P.pptx
Non Text Magic Studio Magic Design for Presentations L&P.pptxNon Text Magic Studio Magic Design for Presentations L&P.pptx
Non Text Magic Studio Magic Design for Presentations L&P.pptxAbhayThakur200703
 
Grateful 7 speech thanking everyone that has helped.pdf
Grateful 7 speech thanking everyone that has helped.pdfGrateful 7 speech thanking everyone that has helped.pdf
Grateful 7 speech thanking everyone that has helped.pdfPaul Menig
 
BEST Call Girls In Old Faridabad ✨ 9773824855 ✨ Escorts Service In Delhi Ncr,
BEST Call Girls In Old Faridabad ✨ 9773824855 ✨ Escorts Service In Delhi Ncr,BEST Call Girls In Old Faridabad ✨ 9773824855 ✨ Escorts Service In Delhi Ncr,
BEST Call Girls In Old Faridabad ✨ 9773824855 ✨ Escorts Service In Delhi Ncr,noida100girls
 
BEST Call Girls In Greater Noida ✨ 9773824855 ✨ Escorts Service In Delhi Ncr,
BEST Call Girls In Greater Noida ✨ 9773824855 ✨ Escorts Service In Delhi Ncr,BEST Call Girls In Greater Noida ✨ 9773824855 ✨ Escorts Service In Delhi Ncr,
BEST Call Girls In Greater Noida ✨ 9773824855 ✨ Escorts Service In Delhi Ncr,noida100girls
 
Call Girls Pune Just Call 9907093804 Top Class Call Girl Service Available
Call Girls Pune Just Call 9907093804 Top Class Call Girl Service AvailableCall Girls Pune Just Call 9907093804 Top Class Call Girl Service Available
Call Girls Pune Just Call 9907093804 Top Class Call Girl Service AvailableDipal Arora
 
Mondelez State of Snacking and Future Trends 2023
Mondelez State of Snacking and Future Trends 2023Mondelez State of Snacking and Future Trends 2023
Mondelez State of Snacking and Future Trends 2023Neil Kimberley
 
Call Girls In Radisson Blu Hotel New Delhi Paschim Vihar ❤️8860477959 Escorts...
Call Girls In Radisson Blu Hotel New Delhi Paschim Vihar ❤️8860477959 Escorts...Call Girls In Radisson Blu Hotel New Delhi Paschim Vihar ❤️8860477959 Escorts...
Call Girls In Radisson Blu Hotel New Delhi Paschim Vihar ❤️8860477959 Escorts...lizamodels9
 
Insurers' journeys to build a mastery in the IoT usage
Insurers' journeys to build a mastery in the IoT usageInsurers' journeys to build a mastery in the IoT usage
Insurers' journeys to build a mastery in the IoT usageMatteo Carbone
 
Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...
Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...
Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...Dave Litwiller
 
rishikeshgirls.in- Rishikesh call girl.pdf
rishikeshgirls.in- Rishikesh call girl.pdfrishikeshgirls.in- Rishikesh call girl.pdf
rishikeshgirls.in- Rishikesh call girl.pdfmuskan1121w
 
VIP Call Girls Pune Kirti 8617697112 Independent Escort Service Pune
VIP Call Girls Pune Kirti 8617697112 Independent Escort Service PuneVIP Call Girls Pune Kirti 8617697112 Independent Escort Service Pune
VIP Call Girls Pune Kirti 8617697112 Independent Escort Service PuneCall girls in Ahmedabad High profile
 

Recently uploaded (20)

Monte Carlo simulation : Simulation using MCSM
Monte Carlo simulation : Simulation using MCSMMonte Carlo simulation : Simulation using MCSM
Monte Carlo simulation : Simulation using MCSM
 
VIP Kolkata Call Girl Howrah 👉 8250192130 Available With Room
VIP Kolkata Call Girl Howrah 👉 8250192130  Available With RoomVIP Kolkata Call Girl Howrah 👉 8250192130  Available With Room
VIP Kolkata Call Girl Howrah 👉 8250192130 Available With Room
 
2024 Numerator Consumer Study of Cannabis Usage
2024 Numerator Consumer Study of Cannabis Usage2024 Numerator Consumer Study of Cannabis Usage
2024 Numerator Consumer Study of Cannabis Usage
 
Catalogue ONG NUOC PPR DE NHAT .pdf
Catalogue ONG NUOC PPR DE NHAT      .pdfCatalogue ONG NUOC PPR DE NHAT      .pdf
Catalogue ONG NUOC PPR DE NHAT .pdf
 
M.C Lodges -- Guest House in Jhang.
M.C Lodges --  Guest House in Jhang.M.C Lodges --  Guest House in Jhang.
M.C Lodges -- Guest House in Jhang.
 
/:Call Girls In Jaypee Siddharth - 5 Star Hotel New Delhi ➥9990211544 Top Esc...
/:Call Girls In Jaypee Siddharth - 5 Star Hotel New Delhi ➥9990211544 Top Esc.../:Call Girls In Jaypee Siddharth - 5 Star Hotel New Delhi ➥9990211544 Top Esc...
/:Call Girls In Jaypee Siddharth - 5 Star Hotel New Delhi ➥9990211544 Top Esc...
 
Call Girls In Sikandarpur Gurgaon ❤️8860477959_Russian 100% Genuine Escorts I...
Call Girls In Sikandarpur Gurgaon ❤️8860477959_Russian 100% Genuine Escorts I...Call Girls In Sikandarpur Gurgaon ❤️8860477959_Russian 100% Genuine Escorts I...
Call Girls In Sikandarpur Gurgaon ❤️8860477959_Russian 100% Genuine Escorts I...
 
Call Girls In Sikandarpur Gurgaon ❤️8860477959_Russian 100% Genuine Escorts I...
Call Girls In Sikandarpur Gurgaon ❤️8860477959_Russian 100% Genuine Escorts I...Call Girls In Sikandarpur Gurgaon ❤️8860477959_Russian 100% Genuine Escorts I...
Call Girls In Sikandarpur Gurgaon ❤️8860477959_Russian 100% Genuine Escorts I...
 
Non Text Magic Studio Magic Design for Presentations L&P.pptx
Non Text Magic Studio Magic Design for Presentations L&P.pptxNon Text Magic Studio Magic Design for Presentations L&P.pptx
Non Text Magic Studio Magic Design for Presentations L&P.pptx
 
Grateful 7 speech thanking everyone that has helped.pdf
Grateful 7 speech thanking everyone that has helped.pdfGrateful 7 speech thanking everyone that has helped.pdf
Grateful 7 speech thanking everyone that has helped.pdf
 
Best Practices for Implementing an External Recruiting Partnership
Best Practices for Implementing an External Recruiting PartnershipBest Practices for Implementing an External Recruiting Partnership
Best Practices for Implementing an External Recruiting Partnership
 
BEST Call Girls In Old Faridabad ✨ 9773824855 ✨ Escorts Service In Delhi Ncr,
BEST Call Girls In Old Faridabad ✨ 9773824855 ✨ Escorts Service In Delhi Ncr,BEST Call Girls In Old Faridabad ✨ 9773824855 ✨ Escorts Service In Delhi Ncr,
BEST Call Girls In Old Faridabad ✨ 9773824855 ✨ Escorts Service In Delhi Ncr,
 
BEST Call Girls In Greater Noida ✨ 9773824855 ✨ Escorts Service In Delhi Ncr,
BEST Call Girls In Greater Noida ✨ 9773824855 ✨ Escorts Service In Delhi Ncr,BEST Call Girls In Greater Noida ✨ 9773824855 ✨ Escorts Service In Delhi Ncr,
BEST Call Girls In Greater Noida ✨ 9773824855 ✨ Escorts Service In Delhi Ncr,
 
Call Girls Pune Just Call 9907093804 Top Class Call Girl Service Available
Call Girls Pune Just Call 9907093804 Top Class Call Girl Service AvailableCall Girls Pune Just Call 9907093804 Top Class Call Girl Service Available
Call Girls Pune Just Call 9907093804 Top Class Call Girl Service Available
 
Mondelez State of Snacking and Future Trends 2023
Mondelez State of Snacking and Future Trends 2023Mondelez State of Snacking and Future Trends 2023
Mondelez State of Snacking and Future Trends 2023
 
Call Girls In Radisson Blu Hotel New Delhi Paschim Vihar ❤️8860477959 Escorts...
Call Girls In Radisson Blu Hotel New Delhi Paschim Vihar ❤️8860477959 Escorts...Call Girls In Radisson Blu Hotel New Delhi Paschim Vihar ❤️8860477959 Escorts...
Call Girls In Radisson Blu Hotel New Delhi Paschim Vihar ❤️8860477959 Escorts...
 
Insurers' journeys to build a mastery in the IoT usage
Insurers' journeys to build a mastery in the IoT usageInsurers' journeys to build a mastery in the IoT usage
Insurers' journeys to build a mastery in the IoT usage
 
Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...
Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...
Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...
 
rishikeshgirls.in- Rishikesh call girl.pdf
rishikeshgirls.in- Rishikesh call girl.pdfrishikeshgirls.in- Rishikesh call girl.pdf
rishikeshgirls.in- Rishikesh call girl.pdf
 
VIP Call Girls Pune Kirti 8617697112 Independent Escort Service Pune
VIP Call Girls Pune Kirti 8617697112 Independent Escort Service PuneVIP Call Girls Pune Kirti 8617697112 Independent Escort Service Pune
VIP Call Girls Pune Kirti 8617697112 Independent Escort Service Pune
 

Binding Lists in WPF - Sort, Filter, Group Data

Editor's Notes

  1. * 02/25/12 07/16/96 (c) 2005 National Academy for Software Development - http://academy.devbg.org. All rights reserved. Unauthorized copying or re-distribution is strictly prohibited.* ##
  2. * 02/25/12 07/16/96 (c) 2005 National Academy for Software Development - http://academy.devbg.org. All rights reserved. Unauthorized copying or re-distribution is strictly prohibited.* ##
  3. * 02/25/12 07/16/96 (c) 2005 National Academy for Software Development - http://academy.devbg.org. All rights reserved. Unauthorized copying or re-distribution is strictly prohibited.* ##
  4. * 02/25/12 07/16/96 (c) 2005 National Academy for Software Development - http://academy.devbg.org. All rights reserved. Unauthorized copying or re-distribution is strictly prohibited.* ##
  5. * 02/25/12 07/16/96 (c) 2005 National Academy for Software Development - http://academy.devbg.org. All rights reserved. Unauthorized copying or re-distribution is strictly prohibited.* ##
  6. * 02/25/12 07/16/96 (c) 2005 National Academy for Software Development - http://academy.devbg.org. All rights reserved. Unauthorized copying or re-distribution is strictly prohibited.* ##
  7. * 02/25/12 07/16/96 (c) 2005 National Academy for Software Development - http://academy.devbg.org. All rights reserved. Unauthorized copying or re-distribution is strictly prohibited.* ##
  8. * 02/25/12 07/16/96 (c) 2005 National Academy for Software Development - http://academy.devbg.org. All rights reserved. Unauthorized copying or re-distribution is strictly prohibited.* ##
  9. * 02/25/12 07/16/96 (c) 2005 National Academy for Software Development - http://academy.devbg.org. All rights reserved. Unauthorized copying or re-distribution is strictly prohibited.* ##
  10. * 02/25/12 07/16/96 (c) 2005 National Academy for Software Development - http://academy.devbg.org. All rights reserved. Unauthorized copying or re-distribution is strictly prohibited.* ##
  11. * 02/25/12 07/16/96 (c) 2005 National Academy for Software Development - http://academy.devbg.org. All rights reserved. Unauthorized copying or re-distribution is strictly prohibited.* ##
  12. * 02/25/12 07/16/96 (c) 2005 National Academy for Software Development - http://academy.devbg.org. All rights reserved. Unauthorized copying or re-distribution is strictly prohibited.* ##
  13. * 02/25/12 07/16/96 (c) 2005 National Academy for Software Development - http://academy.devbg.org. All rights reserved. Unauthorized copying or re-distribution is strictly prohibited.* ##
  14. * 02/25/12 07/16/96 (c) 2005 National Academy for Software Development - http://academy.devbg.org. All rights reserved. Unauthorized copying or re-distribution is strictly prohibited.* ##
  15. * 02/25/12 07/16/96 (c) 2005 National Academy for Software Development - http://academy.devbg.org. All rights reserved. Unauthorized copying or re-distribution is strictly prohibited.* ##
  16. * 02/25/12 07/16/96 (c) 2005 National Academy for Software Development - http://academy.devbg.org. All rights reserved. Unauthorized copying or re-distribution is strictly prohibited.* ##
  17. * 02/25/12 07/16/96 (c) 2005 National Academy for Software Development - http://academy.devbg.org. All rights reserved. Unauthorized copying or re-distribution is strictly prohibited.* ##
  18. * 02/25/12 07/16/96 (c) 2005 National Academy for Software Development - http://academy.devbg.org. All rights reserved. Unauthorized copying or re-distribution is strictly prohibited.* ##
  19. * 02/25/12 07/16/96 (c) 2005 National Academy for Software Development - http://academy.devbg.org. All rights reserved. Unauthorized copying or re-distribution is strictly prohibited.* ##
  20. * 02/25/12 07/16/96 (c) 2005 National Academy for Software Development - http://academy.devbg.org. All rights reserved. Unauthorized copying or re-distribution is strictly prohibited.* ##
  21. * 02/25/12 07/16/96 (c) 2005 National Academy for Software Development - http://academy.devbg.org. All rights reserved. Unauthorized copying or re-distribution is strictly prohibited.* ##
  22. * 02/25/12 07/16/96 (c) 2005 National Academy for Software Development - http://academy.devbg.org. All rights reserved. Unauthorized copying or re-distribution is strictly prohibited.* ##
  23. * 02/25/12 07/16/96 (c) 2005 National Academy for Software Development - http://academy.devbg.org. All rights reserved. Unauthorized copying or re-distribution is strictly prohibited.* ##
  24. * 02/25/12 07/16/96 (c) 2005 National Academy for Software Development - http://academy.devbg.org. All rights reserved. Unauthorized copying or re-distribution is strictly prohibited.* ##
  25. * 02/25/12 07/16/96 (c) 2005 National Academy for Software Development - http://academy.devbg.org. All rights reserved. Unauthorized copying or re-distribution is strictly prohibited.* ##
  26. * 02/25/12 07/16/96 (c) 2005 National Academy for Software Development - http://academy.devbg.org. All rights reserved. Unauthorized copying or re-distribution is strictly prohibited.* ##
  27. * 02/25/12 07/16/96 (c) 2005 National Academy for Software Development - http://academy.devbg.org. All rights reserved. Unauthorized copying or re-distribution is strictly prohibited.* ##
  28. * 02/25/12 07/16/96 (c) 2005 National Academy for Software Development - http://academy.devbg.org. All rights reserved. Unauthorized copying or re-distribution is strictly prohibited.* ##