Загрузить цвета в comboBox - PullRequest
1 голос
/ 26 июля 2011

Я делаю самодельный текстовый редактор и в нем пытаюсь создать элемент управления, используемый для изменения цвета текста, на панели инструментов у меня есть поле со списком, в которое я хочу загружать системные цвета, Пользователь может изменить цвет выделенного текста. Я не могу понять, как заполнить поле со списком этими цветами, я пробовал различные вещи, которые я нашел в Интернете в рамках моего события page_loaded, но не могу заставить его работать. Надеюсь, что вы можете помочь

Спасибо Говядина

1 Ответ

4 голосов
/ 26 июля 2011

Вы можете использовать этот код для заполнения поля со списком всех цветов

Объявить ресурс

<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>

Затем используйте этот ресурс в поле со списком, как это

<ComboBox Name="comboBox1" ItemsSource="{Binding Source={StaticResource colorPropertiesOdp}}" DisplayMemberPath="Name" SelectedValuePath="Name" />

Чтобы использовать sys:string, вам нужно будет включить xmlns:sys="clr-namespace:System;assembly=mscorlib"

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...