我想创建一个字段(文本框,按钮,标签...),当选择并按下某个键时,请使用该键的名称。
我正在尝试失败,
private void label24_Click(object sender, System.Windows.Forms.KeyEventArgs e)
{
label24.Text += e.KeyData.ToString();
}
Edit1:
当前,我需要在文本框中手动输入密钥代码,我想单击该字段并按下一个键,将textbox.text更改为密钥代码
答案 0 :(得分:0)
如果您询问用户在触摸屏监视器上按下键时如何绑定键,则为以下示例。
private void label24_Click(object sender, EventArgs e)
{
myButton btn = (myButton)sender;
MyTextBox.Text += btn.Tag.ToString();
}
但是如果您要迭代字段中的所有按钮。参见下面的示例
public partial class myNumpad : UserControl
{
public myNumpad()
{
InitializeComponent();
BindControls(tableLayoutPanel2);
}
public void BindControls(TableLayoutPanel table)
{
for (int i = 0; i <= table.ColumnCount; i++)
{
for (int j = 0; j <= table.RowCount; j++)
{
Control c = table.GetControlFromPosition(i, j);
if (c is myButton)
c.Click += new EventHandler(Numpad_Click);
}
}
}
[BindableAttribute(true), Category("Control"), Description("SetControl")]
public Control SetControl { get; set; }
private void Numpad_Click(object sender, EventArgs e)
{
if (SetControl != null)
{
myButton btn = (myButton)sender;
SetControl.Text += btn.Tag.ToString();
}
}
}
希望会有所帮助。