You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
181 lines
5.3 KiB
181 lines
5.3 KiB
/************************************************************************
|
|
|
|
Extended WPF Toolkit
|
|
|
|
Copyright (C) 2010-2012 Xceed Software Inc.
|
|
|
|
This program is provided to you under the terms of the Microsoft Reciprocal
|
|
License (Ms-RL) as published at http://wpftoolkit.codeplex.com/license
|
|
|
|
This program can be provided to you by Xceed Software Inc. under a
|
|
proprietary commercial license agreement for use in non-Open Source
|
|
projects. The commercial version of Extended WPF Toolkit also includes
|
|
priority technical support, commercial updates, and many additional
|
|
useful WPF controls if you license Xceed Business Suite for WPF.
|
|
|
|
Visit http://xceed.com and follow @datagrid on Twitter.
|
|
|
|
**********************************************************************/
|
|
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel;
|
|
using System.Windows;
|
|
using System.Windows.Media;
|
|
using Microsoft.Practices.Prism.Regions;
|
|
using Samples.Infrastructure.Controls;
|
|
|
|
namespace Samples.Modules.PropertyGrid.Views
|
|
{
|
|
/// <summary>
|
|
/// Interaction logic for DefaultEditors.xaml
|
|
/// </summary>
|
|
[RegionMemberLifetime( KeepAlive = false )]
|
|
public partial class DefaultEditors : DemoView
|
|
{
|
|
public DefaultEditors()
|
|
{
|
|
InitializeComponent();
|
|
_propertyGrid.SelectedObject = Person.CreatePerson();
|
|
}
|
|
|
|
public class Person
|
|
{
|
|
[Category( "Information" )]
|
|
[DisplayName( "First Name" )]
|
|
[Description( "This property uses a TextBox as the default editor." )]
|
|
public string FirstName
|
|
{
|
|
get;
|
|
set;
|
|
}
|
|
|
|
[Category( "Information" )]
|
|
[DisplayName( "Last Name" )]
|
|
[Description( "This property uses a TextBox as the default editor." )]
|
|
public string LastName
|
|
{
|
|
get;
|
|
set;
|
|
}
|
|
|
|
[Category( "Information" )]
|
|
[DisplayName( "Date of Birth" )]
|
|
[Description( "This property uses the DateTimeUpDown as the default editor." )]
|
|
public DateTime DateOfBirth
|
|
{
|
|
get;
|
|
set;
|
|
}
|
|
|
|
[DisplayName( "Grade Point Average" )]
|
|
[Description( "This property uses the DoubleUpDown as the default editor." )]
|
|
public double GradePointAvg
|
|
{
|
|
get;
|
|
set;
|
|
}
|
|
|
|
[Category( "Information" )]
|
|
[Description( "This property uses the IntegerUpDown as the default editor." )]
|
|
public int Age
|
|
{
|
|
get;
|
|
set;
|
|
}
|
|
|
|
[Category( "Information" )]
|
|
[DisplayName( "Is Male" )]
|
|
[Description( "This property uses a CheckBox as the default editor." )]
|
|
public bool IsMale
|
|
{
|
|
get;
|
|
set;
|
|
}
|
|
|
|
[Category( "Information" )]
|
|
[DisplayName( "Favorite Color" )]
|
|
[Description( "This property uses the ColorPicker as the default editor." )]
|
|
public Color FavoriteColor
|
|
{
|
|
get;
|
|
set;
|
|
}
|
|
|
|
[Category( "Writing" )]
|
|
[DisplayName( "Writing Hand" )]
|
|
[Description( "This property uses a ComboBox as the default editor. The ComboBox is auto populated with the enum values" )]
|
|
public HorizontalAlignment WritingHand
|
|
{
|
|
get;
|
|
set;
|
|
}
|
|
|
|
[Category( "Writing" )]
|
|
[DisplayName( "Writing Font" )]
|
|
[Description( "This property uses a ComboBox as the default editor. The ComboBox is auto populated with the enum values" )]
|
|
public FontFamily WritingFont
|
|
{
|
|
get;
|
|
set;
|
|
}
|
|
|
|
[Category( "Writing" )]
|
|
[DisplayName( "Writing Font Size" )]
|
|
[Description( "This property uses the DoubleUpDown as the default editor." )]
|
|
public double WritingFontSize
|
|
{
|
|
get;
|
|
set;
|
|
}
|
|
|
|
[Category( "Conections" )]
|
|
[DisplayName( "Pet Names" )]
|
|
[Description( "This property uses the PrimitiveTypeCollectionEditor as the default editor." )]
|
|
public List<String> PetNames
|
|
{
|
|
get;
|
|
set;
|
|
}
|
|
|
|
[Category( "Conections" )]
|
|
[Description( "This property uses the CollectionEditor as the default editor." )]
|
|
public List<Person> Friends
|
|
{
|
|
get;
|
|
set;
|
|
}
|
|
|
|
[Category( "Conections" )]
|
|
[Description( "This property is a complex property and has no default editor." )]
|
|
public Person Spouse
|
|
{
|
|
get;
|
|
set;
|
|
}
|
|
|
|
public static Person CreatePerson()
|
|
{
|
|
var person = new Person();
|
|
person.FirstName = "John";
|
|
person.LastName = "Doe";
|
|
person.DateOfBirth = new DateTime( 1975, 1, 23 );
|
|
person.Age = DateTime.Today.Year - person.DateOfBirth.Year;
|
|
person.GradePointAvg = 3.98;
|
|
person.IsMale = true;
|
|
person.FavoriteColor = Colors.Blue;
|
|
person.WritingHand = System.Windows.HorizontalAlignment.Right;
|
|
person.WritingFont = new FontFamily( "Arial" );
|
|
person.WritingFontSize = 12.5;
|
|
person.PetNames = new List<string>() { "Pet 1", "Pet 2", "Pet 3" };
|
|
person.Friends = new List<Person>() { new Person() { FirstName = "First", LastName = "Friend" }, new Person() { FirstName = "Second", LastName = "Friend" } };
|
|
person.Spouse = new Person()
|
|
{
|
|
FirstName = "Jane",
|
|
LastName = "Doe"
|
|
};
|
|
return person;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|