コンボボックスがあり、DrawModeをOwnerDrawFixedに変更し、DrawItemイベントを処理しましたが、selectedIndexを-1に変更しようとしたとき、そのためSelectedIndexChangedは機能しません。私はDropDownList
DrawMode
コンボボックスのWinFormでOwnerDrawFixedモードが選択されている場合、SelectedIndexChangedイベントが発生しません
OwnerDrawFixed
に描画アイテムメソッドにDropDownStyle
を設定している
:今
private void cmbDetTechnician_DrawItem(object sender, DrawItemEventArgs e)
{
try
{
int index = e.Index >= 0 ? e.Index : 0;
var brush = Brushes.Black;
e.DrawBackground();
e.Graphics.DrawString(lstTechnician[index].DisplayName.ToString(), e.Font, brush, e.Bounds, StringFormat.GenericDefault);
e.DrawFocusRectangle();
}
catch
{
}
}
私は、コンボボックスがSelectedIndex
にするように設定する必要がある従業員IDに値を持た-1ませんがそれは動作していません:
if(_EmployeeID == -1){cmbDetTechnician.SelectedIndex = -1; } else { cmbDetTechnician.SelectedValue = _EmployeeID; }
私も持っているこのコンボボックスのSelectedIndexChangedを処理しようとしました。上記の文の後にイベントは発生しません。
private void cmbDetTechnician_SelectedIndexChanged(object sender, EventArgs e)
{
CustomMessageBox.Show("HI");
}
私に間違ったやり方を教えてください。
は何もしない/のtry/catch-EM-すべてでプログラミングのバグを隠してはいけません。 –