Вмъкване на текст в началото на текстово поле

Трябва да вмъкна някакъв текст като първи знак в моето текстово поле, когато се щракне върху бутон.

Ето какво опитах:

private void btnInsert_Click(object sender, EventArgs e)
{
    txtMainView.Text.Insert(0, "TEST");
}

Това не успява да вмъкне текста, когато щракна върху бутона. Някой има ли идея какво правя погрешно?


person Nathan    schedule 31.07.2012    source източник


Отговори (2)


txtMainView.Text = txtMainView.Text.Insert(0, "TEST");

Низовете са неизменни в .NET Framework, така че всяка операция създава нов екземпляр, очевидно не променя самия оригинален низ!

За повече подробности относно класа String вижте страницата на MSDN Низове ( Ръководство за програмиране на C#)

person sll    schedule 31.07.2012
comment
От съображения за четливост трябва да използвате txtMainView.Text = "text" + txtMainView.Text - person aikixd; 01.08.2012
comment
Yatrix вече предложи това, аз просто посочих проблема в изрязания оригинален код и забелязах неизменността на екземпляр String. - person sll; 01.08.2012
comment
Не видях отговора ти. Моя грешка. - person aikixd; 01.08.2012

Актуализация за c# 6+

txtMainView.Text = $"TEST{txtMainView.Text}";

Оригинален

Можете също да отидете с

txtMainView.Text = "TEST" + txtMainView.Text; 

като алтернатива.

person Yatrix    schedule 31.07.2012