Как работать с 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
}
}
}