创建一个显示所有预定义WPF颜色的ListBox

原文 https://stuff.seans.com/2011/02/14/creating-a-listbox-that-shows-all-predefined-wpf-colors/

在WPF中,您可以使用Colors类访问一系列预定义颜色,这些颜色定义为Colors类的静态属性。您只需使用颜色名称引用每种颜色。

作为参考,这里有一个小应用程序,显示ListBox中的所有颜色。(感谢casperOne,在stackoverflow文章中展示了如何创建一个封装Colors类中属性列表的对象)。

这是最终的结果。(单击图像可查看其全尺寸)。

用于生成此列表的XAML非常简单:


1

2

3

4

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

三十

31

32

33

34

35

36

37

38

39

40

41

42

43

44

<Window

    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

    xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="d"

    xmlns:local="clr-namespace:WpfApplication1"

    xmlns:sys="clr-namespace:System;assembly=mscorlib"

    x:Class="WpfApplication1.MainWindow"

    x:Name="Window"

    Title="All Colors"

    Width="640" Height="480" >

    <Window.Resources>

        <ObjectDataProvider MethodName="GetType"

        ObjectType="{x:Type sys:Type}" x:Key="colorsTypeOdp">

            <ObjectDataProvider.MethodParameters>

                <sys:String>System.Windows.Media.Colors, PresentationCore,

                Version=3.0.0.0, Culture=neutral,

                PublicKeyToken=31bf3856ad364e35</sys:String>

            </ObjectDataProvider.MethodParameters>

        </ObjectDataProvider>

        <ObjectDataProvider ObjectInstance="{StaticResource colorsTypeOdp}"

        MethodName="GetProperties" x:Key="colorPropertiesOdp">

        </ObjectDataProvider>

    </Window.Resources>

    <ListBox ItemsSource="{Binding Source={StaticResource colorPropertiesOdp}}"

        ScrollViewer.HorizontalScrollBarVisibility="Disabled"

        ScrollViewer.VerticalScrollBarVisibility="Auto" >

        <ListBox.ItemsPanel>

            <ItemsPanelTemplate>

                <WrapPanel />

            </ItemsPanelTemplate>

        </ListBox.ItemsPanel>

        <ListBox.ItemTemplate>

        <DataTemplate>

            <StackPanel Orientation="Vertical">

                <Rectangle Fill="{Binding Path=Name}" Stroke="Black" Margin="4" StrokeThickness="1" Height="50" Width="81"/>

                <Label Content="{Binding Path=Name}" />

            </StackPanel>

        </DataTemplate>

    </ListBox.ItemTemplate>

    </ListBox>

</Window>

原文地址:https://www.cnblogs.com/lonelyxmas/p/10799493.html

时间: 2024-11-17 22:55:22

创建一个显示所有预定义WPF颜色的ListBox的相关文章

创建一个块定义,并添加实体插入到指定位置

这里实现的是在当前图纸中创建一个新的块定义,并且向该块定义中添加实体,将实体插入到当前图纸中,例子如下: CString blockName = _T("adf");//这里为要创建的块定义名称 AcDbBlockTable *pBlkTab; acdbHostApplicationServices()->workingDatabase() ->getBlockTable(pBlkTab, ZcDb::kForWrite); if (pBlkTab->has(bloc

一个简单的记事本编辑框的实现以及搜集的一些窗口风格的预定义

这是一个简单的记事本的窗口过程 1 WndProc proc hWnd:HWND, uMsg:UINT, wParam:WPARAM, lParam:LPARAM 2 3 LOCAL winRect:RECT 4 LOCAL editWidth:DWORD 5 LOCAL editHeight:DWORD 6 7 .IF uMsg==WM_DESTROY 8 invoke PostQuitMessage,NULL 9 .ELSEIF uMsg==WM_CREATE 10 ;创建一个编辑框 11

搭建QQ聊天通信的程序:(1)基于 networkcomms.net 创建一个WPF聊天客户端服务器应用程序 (1)

搭建QQ聊天通信的程序:(1)基于 networkcomms.net 创建一个WPF聊天客户端服务器应用程序 原文地址(英文):http://www.networkcomms.net/creating-a-wpf-chat-client-server-application/ 注意:本教程是相当广泛的,如果你是在短请也看到我们的东西 开始和 如何在几分钟内创建一个客户端服务器应用程序教程. 注2:本例中包括,明显延长进一步证明功能,在包中包含的示例 包下载. 在我们开始之前确保您已经安装了Vis

wpf(Application 如何创建一个事件,及其Application相关的属性)

1.如何关闭wpf程序.应用程序的关闭只有调用其shutdown方法才可以.shutdown有三种属性.OnLastWindowClose,OnMainWindowClose,OnExplicitShutdown 1)通过在App.xaml中直接设置.shutdown="OnExplicitShutdown": 2)第二种方式:删除App.xaml文件,自己创建一个App.cs类,在main方法中: (建立Application对象,建立win窗体对象略) app.shutdown=s

设计计算机类要求如下:属性:品牌、颜色、cpu型号,内存容量,硬盘大小,价格,工作状态;方法:打开,关闭,休眠;创建一个计算机对象,调用打开、关闭方法

代码如下: 1 //作者:realjanushu 2 //日期:17/9/28 3 /*功能: 4 设计计算机类要求如下: 5 6 属性:品牌.颜色.cpu型号,内存容量,硬盘大小,价格,工作状态: 7 8 方法:打开,关闭,休眠: 9 10 创建一个计算机对象,调用打开.关闭方法 11 */ 12 public class ComputerDemo{ 13 public static void main(String[] args){ 14 Computer c1 = new Computer

WPF中使用MVVM创建一个简单的框架

MVVM模式 一.MVVM模式概述 MVVM Pattern : Model\View\ViewModel View:视图.UI界面 ViewModel:ViewModel是对Model的封装,通过一系列属性暴露Model的状态,提供给View进行显示 Model:数据模型 使用MVVM模式可以将代码逻辑和UI进行分离,因此开发团队可以关注创建健壮的ViewModel类,而设计团队可以关注设计界面友好的View.要融合两个团队输出只需要在View的xaml上进行正确的绑定即可. 二.演示程序 下

QT+创建两个不相干的窗口实现一个显示一个不显示

因为两个窗口互不相干,所以需要重新创建一个窗口类subWidget subWidget.cpp文件 #ifndef SUBWIDGET_H #define SUBWIDGET_H #include <QWidget> #include <QPushButton> class SubWidget : public QWidget { Q_OBJECT public: explicit SubWidget(QWidget *parent = 0); void sendSlot(); s

创建一个程序读入和显示视频文件,并可以使用滑动条控制视频文件的播放。一个滑动条用来控制视频播放位置,以10为步长跳进。另一个滑动条用来控制停止/播放

/* 创建一个程序读入和显示视频文件,并可以使用滑动条控制视频文件的播放. 一个滑动条用来控制视频播放位置,以10为步长跳进.另一个滑动条用来控制 停止/播放 */ #include <cv.h> #include <highgui.h> int g_slider_position = 0; CvCapture* g_capture = NULL; int index = 0; bool flag = true; int g_slider_position1 = 0; void o

iOS开发---UIButton 1 //创建一个可以显示图片的按钮。

1 //创建一个可以显示图片的按钮. 2 -(void)creatImageBtn{ 3 UIButton *btn = [UIButton buttonWithType:UIButtonTypeCustom]; 4 btn.frame = CGRectMake(100, 100, 100, 100); 5 UIImage *icon1 = [UIImage imageNamed:@"icon1.png"]; 6 UIImage *icon2 = [UIImage imageNamed