可以';t catch TAB键向上
本文关键字:TAB catch 可以 | 更新日期: 2023-09-27 18:26:37
我试图捕捉TAB键事件,但它不起作用,我尝试使用此代码,但仍然没有结果,我应该做什么:
protected override bool IsInputKey(Keys keyData)
{
if (keyData == Keys.Tab)
return true;
return base.IsInputKey(keyData);
}
请帮忙!谢谢
我正在努力做到这一点:
private void comboBox1_KeyUp(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter || e.KeyCode == Keys.Tab)
{
try
{
DataView dv = glObalDataSet.Tables["JOBURI"].DefaultView;
dv.RowFilter = "CONT = '" + comboBox1.SelectedValue.ToString() + "'";
comboBox2.DataSource = LoadDataTable(dv);
comboBox2.DisplayMember = "JOB";
comboBox2.AutoCompleteCustomSource = LoadAutoComplete("JOB", dv);
comboBox2.AutoCompleteMode = AutoCompleteMode.SuggestAppend;
comboBox2.AutoCompleteSource = AutoCompleteSource.CustomSource;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
}
尝试使用消息过滤器:
我不确定我在这里使用了正确的制表键,请尝试在这里找到正确的:http://www.woodmann.com/fravia/sources/WINUSER.H
// Add IMessageFilter to the form
public partial class Form1 : Form, IMessageFilter
public bool PreFilterMessage(ref Message m)
{
if (m.Msg == 0x0100)
{
{
DataView dv = glObalDataSet.Tables["JOBURI"].DefaultView;
dv.RowFilter = "CONT = '" + comboBox1.SelectedValue.ToString() + "'";
comboBox2.DataSource = LoadDataTable(dv);
comboBox2.DisplayMember = "JOB";
comboBox2.AutoCompleteCustomSource = LoadAutoComplete("JOB", dv);
comboBox2.AutoCompleteMode = AutoCompleteMode.SuggestAppend;
comboBox2.AutoCompleteSource = AutoCompleteSource.CustomSource;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
return true;
}
return false;
}
编辑:我认为正确的键是0x0100