Back to Devexpress

PopupColorEdit.Color Property

wpf-devexpress-dot-xpf-dot-editors-dot-popupcoloredit.md

latest7.0 KB
Original Source

PopupColorEdit.Color Property

Gets or sets the currently selected color. This is a dependency property.

Namespace : DevExpress.Xpf.Editors

Assembly : DevExpress.Xpf.Core.v25.2.dll

NuGet Package : DevExpress.Wpf.Core

Declaration

csharp
public Color Color { get; set; }
vb
Public Property Color As Color

Property Value

TypeDescription
Color

A Color structure that describes the selected color.

|

Remarks

Use the PopupColorEdit.DefaultColor property to specify the default color, applied when an end-user presses the Default Color button. After the selected color has been changed, the editor fires the PopupColorEdit.ColorChanged event.

Example

This example shows how to create custom palettes and display them within the PopupColorEdit control.

vb
Imports Microsoft.VisualBasic
Imports System
Imports System.Collections.Generic
Imports System.Linq
Imports System.Text
Imports System.Windows
Imports System.Windows.Controls
Imports System.Windows.Data
Imports System.Windows.Documents
Imports System.Windows.Input
Imports System.Windows.Media
Imports System.Windows.Media.Imaging
Imports System.Windows.Navigation
Imports System.Windows.Shapes
Imports DevExpress.Xpf.Editors

Namespace DXEditors_PopupColorEdit
    ''' <summary>
    ''' Interaction logic for MainWindow.xaml
    ''' </summary>
    Partial Public Class MainWindow
        Inherits Window
        Public Sub New()
            InitializeComponent()
            ' Removes the 'Standard Colors' palette.
            popupColorEdit1.Palettes.Remove(popupColorEdit1.Palettes("Standard Colors"))
            ' Adds a custom gradient palette.
            popupColorEdit1.Palettes.Add(CustomPalette.CreateGradientPalette("Apex Colors", PredefinedColorCollections.Apex))
            ' Adds a new palette with three custom RGB colors.
            Dim customColors As List(Of Color) = New List(Of Color)
            customColors.Add(Color.FromRgb(150, 18, 30))
            customColors.Add(Color.FromRgb(20, 40, 20))
            customColors.Add(Color.FromRgb(88, 73, 29))
            Dim palette As CustomPalette = New CustomPalette("Custom RGB Colors", customColors)
            popupColorEdit1.Palettes.Add(palette)
        End Sub
    End Class
End Namespace
xaml
<Window x:Class="DXEditors_PopupColorEdit.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="MainWindow" Height="350" Width="525" xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors" xmlns:dxc="http://schemas.devexpress.com/winfx/2008/xaml/core">
    <Grid>
        <Grid.Resources>
            <ResourceDictionary>
                <dxc:ColorToBrushConverter x:Key="ColorToBrushConverter" />
            </ResourceDictionary>
        </Grid.Resources>
        <Grid.RowDefinitions>
            <RowDefinition Height="Auto" />
            <RowDefinition />
        </Grid.RowDefinitions>
        <GroupBox Header="Text Color" Grid.Row="0" HorizontalAlignment="Left" Margin="3" Name="groupBox1" VerticalAlignment="Top">
            <Grid>
                <dxe:PopupColorEdit Name="popupColorEdit1" Color="Green" Width="130" />
            </Grid>
        </GroupBox>
        <GroupBox HorizontalAlignment="Stretch" Header="Text Box" Grid.Row="1" Margin="3" Name="groupBox2" VerticalAlignment="Stretch">
            <Grid>
                <TextBox Text="Sample text..." Grid.Column="1" Foreground="{Binding Path=Color, ElementName=popupColorEdit1, Converter={StaticResource ColorToBrushConverter}}" Margin="3" Name="textBox1" />
            </Grid>
        </GroupBox>
    </Grid>
</Window>
csharp
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using DevExpress.Xpf.Editors;

namespace DXEditors_PopupColorEdit {
    /// <summary>
    /// Interaction logic for MainWindow.xaml
    /// </summary>
    public partial class MainWindow : Window {
        public MainWindow() {
            InitializeComponent();
            // Removes the 'Standard Colors' palette.
            popupColorEdit1.Palettes.Remove(popupColorEdit1.Palettes["Standard Colors"]);
            // Adds a custom gradient palette.
            popupColorEdit1.Palettes.Add(CustomPalette.CreateGradientPalette("Apex Colors", PredefinedColorCollections.Apex));
            // Adds a new palette with three custom RGB colors.
            popupColorEdit1.Palettes.Add(
                new CustomPalette("Custom RGB Colors",
                new List<Color>() {
                    Color.FromRgb(150, 18, 30),
                    Color.FromRgb(20, 40, 20),
                    Color.FromRgb(88, 73, 29) }));
        }
    }
}

The following code snippet (auto-collected from DevExpress Examples) contains a reference to the Color property.

Note

The algorithm used to collect these code examples remains a work in progress. Accordingly, the links and snippets below may produce inaccurate results. If you encounter an issue with code examples below, please use the feedback form on this page to report the issue.

wpf-scheduler-implement-custom-mapping-converter-for-color-values/CS/ColorMappingExample/MainWindow.xaml#L28

xml
Margin="10,10,10,10"
Color="{Binding ElementName = scheduler, Path= LabelItems[1].Color ,
                Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" />

See Also

PopupColorEdit Class

PopupColorEdit Members

DevExpress.Xpf.Editors Namespace