簡體   English   中英

c#鍵按觸發按鈕單擊

[英]c# key press trigger button click

private void btnBrowserGo_Click(object sender, EventArgs e)
{
    browser.Navigate(txtBrowserURL.Text);
}

上面的代碼將瀏覽器定向到文本框中的URL地址。 我希望如果用戶在鍵入URL時按醚鍵也會發生此事件。 我有下面的代碼,但不知道如何調用上面的代碼

private void txtBrowserURL_KeyPress(object sender, KeyPressEventArgs e)
{
    if (e.KeyChar == (char)13)
    {

    }
}

您可以使用以下方法直接調用該事件:

btnBrowserGo_Click(null, null);

但是,最好不要在事件本身中處理導航,而只是調用方法。 這樣,可以從類中的其他任何地方直接調用該方法。 如果方法中有更多邏輯,則此功能特別有用。

void NavigateBrowser()
{
   browser.Navigate(txtBrowserURL.Text);
}

然后,無論發生什么事件,您都可以調用該方法。

private void txtBrowserURL_KeyPress(object sender, KeyPressEventArgs e)
{
    if (e.KeyChar == (char)13)
    {
        NavigateBrowser();
    }
}

要么

private void btnBrowserGo_Click(object sender, EventArgs e)
{
    NavigateBrowser();
}

嘗試

btnBrowserGo_Click(null, null);

因為您不使用最后兩個參數。

但是,最好將“邏輯”提取到其他方法中,然后再從兩個事件處理程序中使用該方法。

您的邏輯是單線的,但可能更多...

private void txtBrowserURL_KeyPress(object sender, KeyPressEventArgs e)
{
    if (e.KeyChar == (char)13)
    {
       btnBrowserGo_Click(btnBrowserGo,EventArgs.Empty);
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM