C# форматирование MessageBox
Я хочу отобразить MessageBox, предупреждающий пользователя о том, что процесс завершен, и давая разбивку о том, сколько времени занял каждый этап процесса. У меня есть текст, который я хочу, чтобы отобразить соответствующим образом отформатирован, но шрифт по умолчанию класса MessageBox-это не моно-ширину. Насколько я могу судить, нет способа указать шрифт, с которым отображается текст.
есть ли готовые библиотеки то, что я могу использовать для этого, или мне придется написать один себя?
4 ответов
любая причина не просто создать Form
с текстовым полем / меткой, используя шрифт monospace, затем вызовите Form.ShowDialog
? Похоже, отдельная библиотека с этим была бы для меня излишней.
для записи это действительно возможно, MessageBox () расширяет вкладки. Например:
private void button1_Click(object sender, EventArgs e) {
MessageBox.Show(
"hello\tworld\r\n" +
"second\tline");
}
это не очень надежно, если ширина слова начинает приближаться к ширине вкладки. Вы все равно должны предпочесть небольшую вспомогательную форму с ListView.
Я только что написал замену одного файла для MessageBox с изменяемым шрифтом. Вы можете скачать его здесь и использовать его как стандартный MessageBox:
http://www.codeproject.com/Articles/601900/FlexibleMessageBox-A-flexible-replacement-for-the
С Уважением, Йорг