Список уведомлений, какой контроль является лучшим выбором? - PullRequest
2 голосов
/ 03 февраля 2010

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

Connecting to database...done
Current datetime: 
Inserting data into database 10/1000...done
Inserting data into database 20/1000...done
...
Inserted data into database
Current datetime:

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

Есть ли лучший контроль для этого? Если текстовое поле было лучшим выбором, то как я могу это сделать?

Заранее спасибо!

Ответы [ 2 ]

2 голосов
/ 03 февраля 2010

Я видел, как люди используют ListBoxes и TextBoxes. Я обычно использую RichTextBoxes, потому что тогда я могу легко применить некоторые простые стили и раскраски, но это, вероятно, излишне.

Я нашел этот метод в одном из моих проектов "просто игра":

private void writeToLog(String text, SolidColorBrush color)
{
    TextRange tr = new TextRange(logTextBox.Document.ContentEnd, logTextBox.Document.ContentEnd);
    tr.Text = text;
    tr.ApplyPropertyValue(TextElement.ForegroundProperty, color);
}
2 голосов
/ 03 февраля 2010

Я бы использовал список.Установите его в SelectionMode.None.Добавьте в коллекцию предметов.Если у вас достаточно строк для прокрутки экрана, вам нужно вручную отрегулировать полосу прокрутки вниз.Сделайте это, установив в списке TopIndex количество строк - 1.

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