Как работать с BarEditItem и BarCheckItem в RibbonControl Winforms Devexpress?

Мне нужен CheckBox в RibbonControl, и если он проверен, мне нужно выполнить какую-то задачу, если не отмечен, мне нужно выполнить другую задачу. Так я попробовал barCheckItem1 Он работает должным образом, что я ожидаю, но отображается как кнопка Мне нужен точный CheckBox. Итак, я снова использовал barEditItem1 в этом пункте событие "CheckChanged" недоступно, тогда, если я напишу код в событии "EditValueChanged", если я проверю или сниму флажок, событие не сработало. Как выполнить мою задачу? Мне нужен CheckBox с событием CheckedChanged.

2 ответа

У вас есть два способа получить доступ к самому элементу управления:

Одним из способов является:

CheckEdit checkEdit = barEditItem.Edit as CheckEdit;
bool isChecked = checkEdit.Checked;

Другой - редактор репозитория напрямую:

 bool isChecked = repositoryItemCheckedEdit.ValueChecked;

Я надеюсь, что это полезно.

Это то, что тебе надо?

Добавить BarEditItem с CheckEdit, прикрепить событие CheckedChanged из RepositoryItemCheckEdit, Вы сделали

private void repositoryItemCheckEdit1_CheckedChanged(object sender, EventArgs e)
{
    Console.WriteLine(((CheckEdit) sender).Checked);
}

private void button1_Click(object sender, EventArgs e)
{
     bool? ischecked = (bool?)barEditItem1.EditValue;
     if(!ischecked.HasValue)
     {
       //In determinate state
     }
     else
     {
       if(ischecked.Value)
       {
           //Checked
       }
       else
       {
           //Not Checked
       }
     }
}
Другие вопросы по тегам