Jak pozbyc sie dzwieku po wcisnieciu entera w richtextbox

0

Witam
Potrzebuje sprawic, zeby w RichTextBox po wcisnieciu enter lub spacji w aktualnym miejscu polazenia kursora wstawic znak "#" bez wydania beepniecia
Uzytkownik nie moze miec mozliwosci zmieniac w inny sposob tekstu.

Ustawilem richTextBox na ReadOnly
Dodalem reakcje na nacisniecie klawisza.

Problem polega na tym, ze po wcisnieciu przycisku jest dodawany "#" oraz jest wydawane bipnięcie. Nie wiem jak pozbyć się najprościej tego dzwieku

private void richTextBox1_KeyDown(object sender, KeyEventArgs e)
{

        if (e.KeyCode == Keys.Enter || e.KeyCode == Keys.Space)
        {
           richTextBox1.SelectedText = "#";
        }

    }

Z gory dziekuje za odp

0

Najprościej to nie ustawiaj go na readonly.

0
adf88 napisał(a)

Najprościej to nie ustawiaj go na readonly.

Problem w tym, że użytkownik nie powinien mieć żadnej innej możliwości modyfikacji tekstu niż wstawienie #.

0

No musisz w inny sposób tego bronić. Jeśli wystąpi KeyDown nie pozwalaj na wpisanie niczego. Do tego trzeb uodpornić na wklejanie ze schowka myszką.

0

Trzeba by jeszcze uodpornić na wycinanie, wklejanie, przenoszenie, usuwanie myszką, cofanie zmian ...
Szkoda, że się nie da prościej

0

No w sumie wystarczy przywracać tekst podczas jakiejkolwiek zmiany (jest jakieś zdarzenie ...Change)

1 użytkowników online, w tym zalogowanych: 0, gości: 1