Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / Как обеспечить такое поведение? / 9 сообщений из 9, страница 1 из 1
16.02.2011, 18:35
    #37120820
Руки-крюки
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как обеспечить такое поведение?
Нужно отобразить 3 строки в TexBlock'е и сделать для 2-х из них привязку. Что-то вроде такого:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
<TextBlock TextWrapping="Wrap">
                                    
    <TextBlock TextWrapping="Wrap"
                Text="{Binding Path=Text}" />
                                    
    <TextBlock TextWrapping="Wrap"
                Margin="4,0,0,0"
                Text="{Binding Path=Question}" 
                Visibility="{Binding Path=Question, Converter={StaticResource StringToColapseConv}}" />
                                    
    <TextBlock TextWrapping="NoWrap"
                Margin="4,0,0,0"
                Visibility="{Binding Path=Question, Converter={StaticResource StringToColapseConv}}">
        <Hyperlink Click="YesHyperLinkButton_Click">
            <TextBlock Text="Yes" />
        </Hyperlink>
        <TextBlock Text=" / " />
        <Hyperlink Click="NoHyperLinkButton_Click">
            <TextBlock Text="No" />
        </Hyperlink>
    </TextBlock>
</TextBlock>

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
    public class StringToColapseConverter : IValueConverter
    {
        public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
        {
            string input = (string)value;

            if (input == null) return Visibility.Collapsed;
            if (input == "") return Visibility.Collapsed;

            return Visibility.Visible;
        }
    }

Но в данном случае если Text слишком длинный и происходит Wrap, то Question уже отображается с новой строки. А нужно что бы после Text сразу шло Question без переноса на новую строку.
...
Рейтинг: 0 / 0
16.02.2011, 19:59
    #37120997
уТКа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как обеспечить такое поведение?
Руки-крюки,

можете нарисовать в пейнте чего хотели?

нипанятна (с) Камеди клаб
...
Рейтинг: 0 / 0
16.02.2011, 20:30
    #37121056
Руки-крюки
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как обеспечить такое поведение?
уТКа,



Желтое завязать на Text. Зеленое на Question. Visibility для Yes / No завязать на Question != null.
...
Рейтинг: 0 / 0
16.02.2011, 20:55
    #37121105
Вестник
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как обеспечить такое поведение?
MultiBinding?
...
Рейтинг: 0 / 0
17.02.2011, 01:15
    #37121340
i
i
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как обеспечить такое поведение?
Один листбокс с multibinding'ом и Converter'ом
...
Рейтинг: 0 / 0
17.02.2011, 11:12
    #37121795
Вестник
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как обеспечить такое поведение?
текстбокс вы хотели сказать?
...
Рейтинг: 0 / 0
17.02.2011, 11:13
    #37121799
Вестник
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как обеспечить такое поведение?
еще можно сделать RichTextBox, в нем несколько Run, каждый привязан на своё свойство
...
Рейтинг: 0 / 0
17.02.2011, 15:30
    #37122657
Руки-крюки
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как обеспечить такое поведение?
А как быть с Visibility? У Inline (Run, Hyperlink и т.д.) элементов нет такого свойства.
...
Рейтинг: 0 / 0
17.02.2011, 16:05
    #37122781
Вестник
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как обеспечить такое поведение?
я таких подробностей не знаю, уж извините
...
Рейтинг: 0 / 0
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / Как обеспечить такое поведение? / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]