Я новичок в кодировании, и я застрял в ситуации, когда мне нужно использовать DevExpress
в C#
.. и проблема в том, что я использовал 2 checkedcombobox
, и как только элемент выбран в первом checkedcombobox
мне нужно включить другой checkedcombobox
, но когда он не отмечен, мне нужно отключить другой checkedcombobox
.
using DevExpress.XtraEditors.Repository;
namespace UpdateGmtType
{
[Flags]
enum types
{
BookRequest= 0x01,
RawPaperRequest = 0x02,
BoardRequest = 0x04,
}
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
checkedComboBoxEdit1.Properties.SetFlags(typeof(types));
removeCombinedFlags(checkedComboBoxEdit1.Properties);
checkedComboBoxEdit1.SetEditValue(types.BookRequest);
}
private void checkedComboBoxEdit1_EditValueChanged(RepositoryItemCheckedComboBoxEdit properties)
{
throw new NotImplementedException();
}
private void removeCombinedFlags(RepositoryItemCheckedComboBoxEdit ri)
{
for (int i = ri.Items.Count - 1; i > 0; i--)
{
Enum val1 = ri.Items[i].Value as Enum;
for (int j = i - 1; j >= 0; j--)
{
Enum val2 = ri.Items[j].Value as Enum;
if (val1.HasFlag(val2))
{
ri.Items.RemoveAt(i);
break;
}
}
}
}
private void checkedComboBoxEdit2_EditValueChanged(object sender, EventArgs e)
{
if(checkedComboBoxEdit1.SelectedText.ToString() == 1)
{
checkedComboBoxEdit2.Enabled = true;
}
else
{
checkedComboBoxEdit2.Enabled = false;
}
}