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.
175 lines
5.2 KiB
175 lines
5.2 KiB
/***************************************************************************************
|
|
|
|
Extended WPF Toolkit
|
|
|
|
Copyright (C) 2007-2015 Xceed Software Inc.
|
|
|
|
This program is provided to you under the terms of the Microsoft Public
|
|
License (Ms-PL) as published at http://wpftoolkit.codeplex.com/license
|
|
|
|
For more features, controls, and fast professional support,
|
|
pick up the Plus Edition at http://xceed.com/wpf_toolkit
|
|
|
|
Stay informed: follow @datagrid on Twitter or Like http://facebook.com/datagrids
|
|
|
|
*************************************************************************************/
|
|
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel;
|
|
using System.Windows;
|
|
using System.Windows.Media;
|
|
|
|
namespace Xceed.Wpf.Toolkit.LiveExplorer.Samples.PropertyGrid.Views
|
|
{
|
|
/// <summary>
|
|
/// Interaction logic for PropertyGridSpecifyingPropertiesView.xaml
|
|
/// </summary>
|
|
public partial class PropertyGridSpecifyingPropertiesView : DemoView
|
|
{
|
|
public PropertyGridSpecifyingPropertiesView()
|
|
{
|
|
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 System.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 System.Windows.Media.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 System.DateTime( 1975, 1, 23 );
|
|
person.Age = System.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;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|