2015-08-05 3 views
0

Я пытаюсь вставить несколько писем в большое текстовое поле с точкой с запятой (;) в конце каждого письма, но я не хочу, чтобы точка с запятой была на назад последнего письма. Пожалуйста, как я могу это сделать, все ответы будут приветствоваться.Как вставить отформатированный текст в текстовое поле, C#

+4

uhm ... нажмите Backspace, если это произойдет? В какой части вашей проблемы используется C#? У вас есть код? – nvoigt

+0

Что вы подразумеваете под «пастой»? Вы делаете это в коде? Используете ли вы CTRL + V для этого? Этот вопрос непонятен. Также: Что все это имеет отношение к «форматированному тексту», как указано в названии вопроса? –

+0

Я рекомендую вам добавить ';' в конце каждого письма и после цикла просто усекают последний символ. –

ответ

1

Вы можете использовать функцию TrimEnd()

string Emails = "[email protected];[email protected];"; 
this.textBox1.Text = Emails.TrimEnd(';'); 

или, если он уже в вашем TextBox

this.textBox1.Text = this.textBox1.Text.TrimEnd(';');

0

Просто удалить последний символ. Вы можете сделать это с помощью подстроки.

1

Попробуйте

string email = "[email protected];[email protected];[email protected];"; 
this.textBox1.text = email.Replace(";", string.Empty); 
//to show emails in separate lines then use it in this way 
this.textBox1.text = email.TrimEnd(';').Replace(";", Environment.NewLine); 
+0

@Musakkhir Sayyed, Спасибо за редактирование. –

0

Я не понимаю, что вы хотите. Но, возможно, этот код может помочь вам удалить последнюю полуточку, если она существует.

var str = "[email protected];[email protected];[email protected];"; 
var length = str.Length - 1; 

if (str.LastIndexOf(';') == length) 
{ 
    str.Remove(length); 
} 
Смежные вопросы