Как указать кнопку по умолчанию для TextBox, на которую ссылается AcceptsReturn? - PullRequest
0 голосов
/ 01 марта 2012

У меня есть форма окна с полоской инструментов, на которой есть текстовое поле и несколько кнопок (например, панель URL браузера с кнопкой перехода назад, вперед)

Я хочу нажать Enter, чтобы активировать goButton так же, как щелкнуть по нему, что, как я полагаю, для TextBox.AcceptsReturn = false.

Я не вижу ничего, что могло бы отвечать требованиям "скажите мне, какую кнопку в форме мы будем активировать".

Чего мне не хватает?

Ответы [ 4 ]

2 голосов
/ 01 марта 2012

A Form имеет кнопку по умолчанию, но определенного элемента управления нет (в любом случае из коробки).

В вашем сценарии я бы, вероятно, обработал вызов события goButton.Click, отслеживая нажатие клавиш в ожидании нажатия клавиши Enter.

0 голосов
/ 27 июля 2018

Похоже на старый вопрос, но я предоставлю свое решение.

    private void ChangeDefaultButton()
    {
        if (this.TextBox.Focused)
        {
            this.AcceptButton = button;
        }
        else
        {
            this.AcceptButton = button1;
        }
    }

А затем добавьте этот метод к событиям фокуса текстовых полей. Как ...

    private void TextBox_Enter(object sender, EventArgs e)
    {
        ChangeDefaultButton();
    }

И

    private void TextBox_Leave(object sender, EventArgs e)
    {
        ChangeDefaultButton();
    }
0 голосов
/ 19 марта 2015

Я знаю, что это старый вопрос, но для тех, кто может быть ленивым или просто новичком, обработчик может показаться слишком большой работой (хотя на самом деле это не так)

Но есть более простой способЧтобы обойти это, вы можете создать панель для каждого из них (1 текстовое поле и 1 кнопка для примера) и установить кнопку «По умолчанию» для каждой панели, как вам нужно.

Я использовал это для своего сайта, где яу меня было несколько панелей Ajax, и я хотел, чтобы у каждого было свое окно поиска по различным предметам и работа с кнопкой ввода.

0 голосов
/ 01 марта 2012

Самый простой способ - настроить формы «Принять кнопку» на нужный элемент управления кнопки.Это можно сделать в конструкторе.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...