0

我在 C# 4.0 中有一个 WinForm 项目。

我想当用户单击按钮输入时,它会调用此按钮的 onclick 事件。

我的代码:

 public XtraForm_Main()
        {
            InitializeComponent();

...
this.AcceptButton = (Button)this.Controls["button_Valider"];
        }

 private void Main_Load(object sender, EventArgs e)
        {
            this.AcceptButton = (Button)this.Controls["button_Valider"];
        }

  private void button_Valider_Click(object sender, EventArgs e)
        {
            try
            {
                using (var connectionWrapper = new Connexion())
                {
                    var connectedConnection = connectionWrapper.GetConnected();
                    string SqlSyntax = "SELECT * FROM ORDRE WHERE REF_EXPED = @REFERENCE";
                    SqlCommand comm_InsUpt = new SqlCommand(SqlSyntax, connectionWrapper.conn);
                    comm_InsUpt.Parameters.AddWithValue("@REFERENCE", textEdit_ref.Text);
                    SqlDataAdapter adapt_SelectAll = new SqlDataAdapter();
                    adapt_SelectAll.SelectCommand = comm_InsUpt;
                    DataSet dSet_SelectAll = new DataSet();
                    adapt_SelectAll.Fill(dSet_SelectAll, "BON_ETIKET");

                    var xtraReport_Pricipal = new Zebra_Web();

                    xtraReport_Pricipal.Parameters["Count_Ordre"].Value = 1;
                    xtraReport_Pricipal.Parameters["IdPacket"].Value = 1;
                    xtraReport_Pricipal.DataSource = dSet_SelectAll;
                    xtraReport_Pricipal.DataMember = dSet_SelectAll.Tables[0].TableName;
                    xtraReport_Pricipal.CreateDocument();

                    xtraReport_Pricipal.PrintingSystem.ShowMarginsWarning = false;
                    xtraReport_Pricipal.PrintingSystem.ContinuousPageNumbering = true;
                    //xtraReport_Pricipal.ShowPreviewDialog();
                    xtraReport_Pricipal.Print(Properties.Settings.Default.Zebra);

                    dSet_SelectAll.Dispose();
                    adapt_SelectAll.Dispose();
                }
            }
            catch (Exception excThrown)
            {
                throw new Exception(excThrown.Message, excThrown);
            }
        }

我试图把这条线:

this.AcceptButton = (Button)this.Controls["button_Valider"];

在构造函数和 onLoad From 事件中,但仍然无法正常工作。当用户单击按钮时,什么也没有发生。我必须用鼠标点击它。

4

1 回答 1

1

您需要将KeyPreview表单的属性设置为True. 然后编写一个KeyDown事件来处理Enter键,Form 如下所示:

 private void Form1_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.Enter)
            {
                button_Valider_Click(sender,e);
            }
        }
于 2013-11-14T08:32:36.897 回答