Create Collection based Resource for data binding : Resource « Windows Presentation Foundation « C# / C Sharp

Home
C# / C Sharp
1.2D Graphics
2.Class Interface
3.Collections Data Structure
4.Components
5.Data Types
6.Database ADO.net
7.Design Patterns
8.Development Class
9.Event
10.File Stream
11.Generics
12.GUI Windows Form
13.Language Basics
14.LINQ
15.Network
16.Office
17.Reflection
18.Regular Expressions
19.Security
20.Services Event
21.Thread
22.Web Services
23.Windows
24.Windows Presentation Foundation
25.XML
26.XML LINQ
C# / C Sharp by API
C# / CSharp Tutorial
C# / CSharp Open Source
C# / C Sharp » Windows Presentation Foundation » ResourceScreenshots 
Create Collection based Resource for data binding
Create Collection based Resource for data binding
  

<Window 
    x:Class="WpfApplication1.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="clr-namespace:WpfApplication1"
    Title="WPF" Height="300" Width="180">

    <Window.Resources>
        <local:SortableCountries x:Key="sortableCountries"/>
    </Window.Resources>
    <Grid>
        <StackPanel>
            <ItemsControl ItemsSource="{StaticResource sortableCountries}" />
            <Button Click="SortButton_Click" Content="Sort" Margin="8" />
        </StackPanel>

    </Grid>

</Window>

//File:Window.xaml.cs

using System;
using System.Collections;
using System.Windows;
using System.Windows.Data;
using System.Collections.ObjectModel;

namespace WpfApplication1
{
    public partial class Window1 : Window
    {
        public Window1()
        {
            InitializeComponent();
        }

        private void SortButton_Click(object sender, RoutedEventArgs args)
        {
            SortableCountries sortableCountries = (SortableCountries)(this.Resources["sortableCountries"]);

            ListCollectionView lcv = (ListCollectionView)CollectionViewSource.GetDefaultView(sortableCountries);

            lcv.CustomSort = new SortCountries();
        }
    }

    public class SortCountries : IComparer
    {
        public int Compare(object x, object y)
        {
            string stringX = x.ToString();
            string stringY = y.ToString();
            
            return stringX.CompareTo(stringY);

        }
    }

    public class SortableCountries : ObservableCollection<string>
    {
        public SortableCountries()
        {
            this.Add("C");
            this.Add("B");
            this.Add("A");
        }
    }
}

   
    
  
Related examples in the same category
1.Use outter resource or inner resource
2.Window level resource
3.Button style as Window resourceButton style as Window resource
4.Event Triggers as ResourceEvent Triggers as Resource
5.Reuse Font With ResourcesReuse Font With Resources
6.Define Double value as resourceDefine Double value as resource
7.Add a logical resource to the window's resource dictionaryAdd a logical resource to the window's resource dictionary
8.Font Size ResourcesFont Size Resources
9.Use EnvironmentInfo as ResourceUse EnvironmentInfo as Resource
10.Dynamic Resource: SystemColors.InactiveCaptionBrushKeyDynamic Resource: SystemColors.InactiveCaptionBrushKey
11.Load Resource for Application
12.No Logical ResourcesNo Logical Resources
13.Logical ResourcesLogical Resources
14.Relative pack URI referring to external component for a ResourceRelative pack URI referring to external component for a Resource
15.Find Control Styles with FindResource()Find Control Styles with FindResource()
16.TextGeometry as ResourceTextGeometry as Resource
17.Retrieving assembly manifest resources
18.Get Resource Names from AssemblyGet Resource Names from Assembly
19.Find Resource with FindResourceFind Resource with FindResource
20.Wrap collection based resource in a CollectionViewSourceWrap collection based resource in a CollectionViewSource
21.Add event handler to StackPanel in StackPanel resourceAdd event handler to StackPanel in StackPanel resource
22.Add Event handler in Panel ResourceAdd Event handler in Panel Resource
23.DataGridView and ResourceDataGridView and Resource
24.Dynamic ResourceDynamic Resource
25.Load Assembly ResourcesLoad Assembly Resources
26.BitmapImage as ResourcesBitmapImage as Resources
27.Cropped image as Resource
28.Load Xaml ResourceLoad Xaml Resource
29.Use Resources.Add to add static resouce from codeUse Resources.Add to add static resouce from code
30.Event Setter from ResourcesEvent Setter from Resources
www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.