Member 13050667 Ответов: 1

C# как сделать элемент listview недоступным для редактирования, если он не выбран?


У меня есть listview с 20+ элементами. Каждый элемент имеет datepickers и comboboxes.
Когда я выбираю, скажем, 3-й элемент, но перемещая мышь над 10-м и щелкая по выпадающему списку, я могу отредактировать его, но изменение будет применено как к 3-му, так и к 10-му элементам.

Обратите внимание, что мне все еще нужно иметь возможность использовать несколько элементов, но только в том случае, если они выбраны.

Есть ли способ отключить редактирование элемента, если он не выбран?

Есть ли какая-то лучшая практика?

Что я уже пробовал:

понятия не имел и не мог найти ни одной полезной статьи в сети. (скорее всего, проблема заключается в моих поисковых словах)

Alan N

Какой контроль вы используете? В заголовке говорится listview, но в тексте упоминается listbox, содержащий дочерние элементы управления. Я в замешательстве - пожалуйста, дайте полные имена типов.

Member 13050667

извините меня плохо, действительно это listview, а не listbox

BillWoodruff

нужна более конкретная информация о структуре Вашего ListView. Зачем вам нужен множественный выбор ?

Member 13050667

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

1 Ответов

Рейтинг:
1

RickZeeland

Смотрите пример здесь: c# - Как отключить элемент управления listview в .net 3.5 - переполнение стека[^]

Поскольку вы, вероятно, не используете флажки, вы можете попробовать элемент управления ListView.Событие ItemSelectionChanged (System.Окна.Формы) | Microsoft Docs[^]

Другим кандидатом может быть элемент управления ListView.ItemActivate Event (System.Окна.Формы) | Microsoft Docs[^]


BillWoodruff

какое отношение эта статья имеет к вопросу ОП ?

RickZeeland

Пример с флажками, которые могут быть не тем, что он хочет, но это показывает, как вы можете использовать событие для обработки вещей.