Arvi.S Ответов: 2

Установите/снимите все флажки в listview с помощью одного переключателя


Привет, Команда. У меня есть некоторые элементы внутри моего списка с флажками.
У меня есть один переключатель вне элемента управления представлением списка, чтобы выбрать/снять все флажки внутри элемента управления представлением списка.
Заранее спасибо за помощь!

Ниже приведены критерии, которым я хочу удовлетворить:

1.если переключатель срабатывает в первый раз, то все флажки внутри элемента управления представлением списка должны быть установлены.
2.если какой-либо из флажков снят вручную, то при нажатии на переключатель следует еще раз выбрать все флажки.
3.если тот же переключатель срабатывает снова, все флажки внутри элемента управления представлением списка должны быть сняты.
3.Если какой-либо из флажков установлен вручную, то при нажатии на переключатель следует еще раз снять все флажки.

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

Я пытался погуглить его, но, к сожалению, не смог получить именно то, что хочу удовлетворить.

Karthik_Mahalingam

используя один переключатель? как можно проверить/снять флажок с элемента управления?
вместо этого используйте флажок.

2 Ответов

Рейтинг:
0

Pradeep Arthanari

Вы можете попробовать это:

bool isChecked = false;
private void radioButton1_CheckedChanged(object sender, EventArgs e)
{
    for (int i = 0; i < routeNamesListView.Items.Count; i++)
    {
        if (radioButton1.Checked)
            routeNamesListView.Items[i].Checked = true;
        else
            routeNamesListView.Items[i].Checked = false;
    }
    isChecked = radioButton1.Checked;
}

private void radioButton1_Click(object sender, EventArgs e)
{
    if (radioButton1.Checked && !isChecked)
        radioButton1.Checked = false;
    else
    {
        radioButton1.Checked = true;
        isChecked = false;
    }
}


Arvi.S

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

routeNamesListView.Флажки = true;
{
for (int i = 0; i < routeNamesListView.Предметы.Граф; i++)
{
routeNamesListView.Элементы[я].Проверено = истина;
}
}

Будет ли хорошо выбрать/Снять флажки с помощью одного флажка? Если так любезно дайте мне знать

Pradeep Arthanari

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

Вам нужно добавить переключатель и добавить 2 события для переключателя, указанного выше (Checkchanged & Click)

Arvi.S

Да.- Я сделал все, что вы закодировали выше. Но он не работает и выдает нулевую ошибку.
Как я уже упоминал в приведенном выше комментарии, мои флажки установлены по умолчанию, о чем я не упоминал в своем вопросе. Должен ли я что-то изменить в вашем коде?

И в коде, который вы отправили, если переключатель нажат один раз, он не принимает для следующего действия щелчка.

Pradeep Arthanari

Не могли бы вы скопировать ваш код?

Arvi.S

Объявлено "bool isChecked = false;" глобально.

частная t1RadioButton_CheckedChanged недействительным(объект отправителя, EventArgs в электронной)
{
for (int i = 0; i < routeNamesListView.Предметы.Граф; i++)
{
if (t1RadioButton.Проверен)
routeNamesListView.Элементы[я].Проверено = истина;
еще
routeNamesListView.Элементы[я].Проверено = ложь;
}
этот флажок установлен = t1RadioButton.Проверен;
}

частная t1RadioButton_Click недействительным(объект отправителя, EventArgs в электронной)
{
if (t1RadioButton.Проверено && !isChecked)
t1RadioButton.Проверено = ложь;
еще
{
t1RadioButton.Проверено = истина;
этот флажок установлен = ложь;
}
}

Еще раз повторяю, все флажки в элементе управления представлением списка установлены по умолчанию!

Pradeep Arthanari

Попробуйте синхронизировать просмотр списка и переключатель check. Я имею в виду, что установите флажок на странице load itslef, так как ваш listview установлен по умолчанию.

t1RadioButton.Проверено = истина;

Pradeep Arthanari

Я бы посоветовал вам использовать один общий флажок вместо переключателя для выбора/отмены выбора. для этого вы можете попробовать приведенный ниже код:

частный недействительными checkBox1_CheckedChanged(объект отправителя, EventArgs в электронной)
{
for (int i = 0; i < routeNamesListView.Предметы.Граф; i++)
{
если (checkBox1.Проверено)
routeNamesListView.Элементы[я].Проверено = истина;
еще
routeNamesListView.Элементы[я].Проверено = ложь;
}
}

И включите свой флажок в самой загрузке страницы, так как ваш listview установлен по умолчанию.

checkBox1.Проверено = истина;

Arvi.S

Большое тебе спасибо, Прадип!!. Это работает очень хорошо!!

Рейтинг:
0

Member 13907544

Чтобы отменить выбор определенных кнопок я использовал код, как показано ниже:

RadioButton3.проверено:=ложь;

Это прекрасно работает в моем приложении.
Надеюсь, это вам поможет.