Изменить цвет и размер определенной строки в текстовом блоке (Windows Phone 7) в VB.net - PullRequest
0 голосов
/ 10 марта 2012

Привет У меня есть кнопка (btnAdd), которая добавляет содержимое текстового поля (txtName) в текстовый блок (lblName). Я хочу добавить дату в текстовый блок при нажатии btnAdd, но я хочу, чтобы это был другой размер шрифта и цвет. Пока мой код выглядит как

lblName.Text = txtName.Text " " + DateTime.Now

Я только хочу, чтобы DateTime.Now был другого размера и цвета. Возможно ли это?

РЕДАКТИРОВАТЬ: вместо метки мне нужно отобразить его в списке мой новый код, по которому мне нужна помощь:

listBox1.Items.Add(txtName.Text " " + DateTime.Now)

1 Ответ

2 голосов
/ 10 марта 2012

Вы хотите назначить Inlines, а не Text:

lblName.Inlines.Clear();
lblName.Inlines.AddRange(new Inline[]
{
    new Run(txtName.Text + " ")
    {
        Foreground = new SolidColorBrush(Color.Black)
    },
    new Run(DateTime.Now.ToString())
    {
        Foreground = new SolidColorBrush(Color.Green)
    }
});

Вы также можете (и должны) связываться с Run напрямую из XAML:

<TextBlock>
    <TextBlock.Inlines>
        <Run Text="{Binding Name}" Foreground="Black" />
        <Run Text=" " Foreground="Black" />
        <Run Text="{Binding Now}" Foreground="Green" />
    </TextBlock.Inlines>
</TextBlock>
...