Member 11603144 Ответов: 2

Как отобразить текст в поле со списком только для чтения в wpf


В xaml установите свойство combobox IsEditable="False" и Text="Test input"

Kornfeld Eliyahu Peter

Как вы интерпретируете "только для чтения" в контексте "комбинированного окна"?

CHill60

Хороший момент - Вы все еще можете выбрать элементы :)

Kornfeld Eliyahu Peter

Я думаю, что это чистый случай RTFM...

CHill60

Лол!

2 Ответов

Рейтинг:
2

Member 13200302

Я сделал свойство "IsReadOnly=True", и оно работает :D


Рейтинг:
17

CHill60

Вам нужно включить пункт "тестовый ввод" и установить IsSelected="True", например

<ComboBox IsEditable="False" >
    <ComboBoxItem IsSelected="True">
        Test Input
    </ComboBoxItem>
</ComboBox>


[Edit - дополнительная информация после разъяснения OP требования]

Существуют различные варианты, вместо того чтобы заново изобретать колесо, я предлагаю прочитать предложения по следующим ссылкам и выбрать метод, который лучше всего подходит для вашего приложения
Итак Пост 1[^]

Так Пост 2[^]


Member 11603144

Мне не нужно включать содержимое в элемент списка

CHill60

Ну вот как вы отображаете текст в поле со списком в WPF. Если вы хотите отобразить только некоторый текст, Используйте вместо него текстовый блок. И Кеп, и я заинтересованы в том, что вы подразумеваете под комбинацией "только для чтения"

Member 11603144

У меня есть поле со списком, и его IsEditable="Falase". кроме того, он содержит некоторые элементы списка.
Мне нужно установить значение по умолчанию в поле со списком, и оно должно отображаться как значение по умолчанию загрузки пользовательского интерфейса, а не включать значение по умолчанию в элемент списка со списком.

CHill60

Возможно, вам придется "вставить" какой-то текст, но, честно говоря, это звучит немного странно. Возможно, вам лучше попытаться объяснить (подробно), чего вы пытаетесь достичь с точки зрения ваших "пользователей". Вы пытаетесь сделать что-то вроде "выберите значение", которое отображается, а затем "выберите значение" не является допустимым выбором?

Member 11603144

например: у меня есть combobox с выпадающим списком, содержащим 3 значения"small","large","medium".
Когда я загружаю пользовательский интерфейс, comboxbox должен содержать текст "Select size"

CHill60

Ладно, это немного меняет дело. Опубликуйте XAML для поля со списком, и я посмотрю еще раз

Member 11603144

&ЛТ;комбобокс х:имя="cmbOffsetType" высота="22" ширина="110" х:Уид="cmbOffsetType" selectedvaluepath="идентификатор" selectedvalue="{привязки P5XVMList[0].OffsetType, ValidatesOnDataErrors=правда, UpdateSourceTrigger=PropertyChanged, как}", что ItemsSource="{привязки OffsetType}" displaymemberpath="значение" имеет="топ" поле HorizontalAlignment="левой" сетке.колонка="5" сетки.строка="1"&ГТ;

Edit - from CHill60 - код здесь просто не отображается - я использовал Edit Comment, чтобы захватить его

CHill60

У меня нет времени, чтобы разобраться во всех синтаксических ошибках в xaml, которые вы опубликовали, поэтому я добавил несколько ссылок на альтернативные решения в свой пост выше.