Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
wpf: прокрутка текста в TextBox
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, подскажите как накрутить анимацию так чтобы был эффект прокрутки строки в textbox (label) ? типа бегущей строки ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2007, 08:22 |
|
||
|
wpf: прокрутка текста в TextBox
|
|||
|---|---|---|---|
|
#18+
Если прокрутка текста ВНУТРИ TextBox, то тут надо играться серьезно. Содержимое текстбокса - это компонент сам в себе. Никакие стили внутрь него не лезут (хотя надо посмотреть внимательно на проперти - если будет какая-нибудь депенданси проверть, регулирующая смещения текста внутри, то можно заюзать ее). Ну, а в принципе, делается так: <Window x:Class="MarqueeExample.Window1" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="Window1" Height="300" Width="300"> <StackPanel> <TextBlock> <TextBlock.RenderTransform> <TranslateTransform x:Name="t1" /> </TextBlock.RenderTransform> <TextBlock.Triggers> <EventTrigger RoutedEvent="FrameworkElement.Loaded"> <BeginStoryboard> <Storyboard RepeatBehavior="Forever"> <DoubleAnimation From="300" To="-300" Storyboard.TargetName="t1" Storyboard.TargetProperty="X" Duration="0:0:5" /> </Storyboard> </BeginStoryboard> </EventTrigger> </TextBlock.Triggers> This is marquee for TextBlock. Understandable. </TextBlock> <TextBox> <TextBox.RenderTransform> <TranslateTransform x:Name="t2" /> </TextBox.RenderTransform> <TextBox.Triggers> <EventTrigger RoutedEvent="FrameworkElement.Loaded"> <BeginStoryboard> <Storyboard RepeatBehavior="Forever"> <DoubleAnimation From="300" To="-300" Storyboard.TargetName="t2" Storyboard.TargetProperty="X" Duration="0:0:10" /> </Storyboard> </BeginStoryboard> </EventTrigger> </TextBox.Triggers> This is for TextBox. Why???!!! </TextBox> </StackPanel> </Window> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2007, 08:43 |
|
||
|
wpf: прокрутка текста в TextBox
|
|||
|---|---|---|---|
|
#18+
кто бы это помогЗдравствуйте, подскажите как накрутить анимацию так чтобы был эффект прокрутки строки в textbox (label) ? типа бегущей строки есть один алгоритм - работает с редакторами типа Label по тику таймера переносить из начала строки первый символ - в конец строки и типа текст бокс - переносить первую строчку в конец коллекции (переносить или убирать) но ето все искусственные механизмы именно для слайдов - тоесть текст бегущей строкой ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2007, 09:02 |
|
||
|
wpf: прокрутка текста в TextBox
|
|||
|---|---|---|---|
|
#18+
Я тут дополнительно подумал... Если кейз состоит в том, чтобы пустить бегущюю строку в TextBox (типа подсказка "Введите слово для поиска"), а в момент фокуса эту подсказку убирать, то примерные действия, наверное, должны выглядеть так - Создать usercontrol, содержащий Border TextBox (x:Name="theTextBox"). У текстбокса убрать бордер (BorderThickness = "0"), чтобы его смещение не вызывало вопросов. Объявить DependancyProperty double LeftMargin, которая будет AffectRender и гдe в callback прописать, как она будет изменять левую границу margin у this.theTextBox Объявить какую-нибудь проперть, чиста чтобы задавать этот текст подсказки. Дальше на Loaded this.theTextBox.Text = "эта подсказка" и запускать анимацию этой LeftMargin (как в предыдужем примере). На GotFocus textbox эту анимацию убирать, LeftMargin=0 и Text делать пустым. На LostFocus смотреть, если Text по-прежнему пустой, то повторять то, что было Loaded. Но все это надо, конечно проверить, что мне лениво. Если надо, попробуйте. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2007, 09:22 |
|
||
|
wpf: прокрутка текста в TextBox
|
|||
|---|---|---|---|
|
#18+
Если с LeftMargin не хочется возиться, можно юзать X у Transform, как в предыдущем примере. В любом случае, убирайте бордер и обрабатывайте GotFocus, LostFocus. Иначе - надо переписывать собственно TextBox (eго ContentControl). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2007, 09:31 |
|
||
|
|

start [/forum/topic.php?fid=21&msg=35036785&tid=1443107]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
40ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
48ms |
get tp. blocked users: |
1ms |
| others: | 233ms |
| total: | 361ms |

| 0 / 0 |
