|
Well I kinda got it to scroll the way I want.
But...
Here's the situation.
I've got an UserControl that can contains a TextBlock.
The text in the TextBlock should scroll from left to right,
But the text shoudn't be visible when it's outside of the UserControl.
This is what I have got so far.
TextBlock tb = (TextBlock)this.Content;
tb.FlowDirection = FlowDirection.LeftToRight;
DoubleAnimation Animation = new DoubleAnimation();
Animation.From = this.Width;
Animation.To = -tb.DesiredSize.Width;
Animation.Duration = new Duration(TimeSpan.FromSeconds(10));
TranslateTransform tt = new TranslateTransform();
tt.BeginAnimation(TranslateTransform.XProperty, Animation);
tb.RenderTransform = tt;
Any ideas how I can get the visibility part? And how do I use a storyboard in this for Repeating?
|
|
|
|
|
KBou wrote: Any ideas how I can get the visibility part?
Read up on the "ClipToBounds" property and set this on your UserControl. I'll assume that you have set a specific height and width on your UserControl.
You should add a method to your UserControl so that the parent container can all the UserControl to start and/or stop the animation. A property for the TextBlock.Text is also in order unless the text is always the same.
KBou wrote: And how do I use a storyboard in this for Repeating?
What are you trying to do?
Have the animation keep repeating?
Have the animation repeat on command? If so, is this command executed in code or XAML?
You used the word storyboard, why? From the beginning you wanted a code only solution, what was the reason for a code only solution instead of using a XAML storyboard?
modified 27-Feb-21 21:01pm.
|
|
|
|
|
Thanks for the ClipToBounds. This works fine.
I have a Canvas on wich the user can drag usercontrols wich can contain a textblock. From a contextmenu they can start the scrolling. The text must keep on scrolling until it is stopped by the user. The text in the textblock is continu changing, much like a news ticker.
And i want all of this in code because the user is must be able to change things like speed, direction and he also had the ability to change the size of the usercontrol.
I have methodes for setting the text and a methode that starts te animation, but now the animation only runs once.
So what is the best way to keep the animation running until the users stops it?
Thanks.
Kevin
|
|
|
|
|
KBou wrote: So what is the best way to keep the animation running until the users stops it?
Check out the "RepeatBehavior" property.
modified 27-Feb-21 21:01pm.
|
|
|
|
|
Well I thaugt I had created what I wanted. But I saw some flaws. First of all you won't get a continuasly stream of text and second it won't show all the text that is my TextBlock wich is in a UserControl only what you can see from the beginning.
So back to square one it is.
I still need help with this. This must be posible.
Kevin
|
|
|
|
|
Kevin,
Now I'm more confused over the desired result.
Can you mock this up with a few images so that we can "see" the desired results.
modified 27-Feb-21 21:01pm.
|
|
|
|
|
This is the idea:
First
Second
It is only one string of text wich continues to scroll over the screen.
|
|
|
|
|
|
I had a look at it and it only solves one of my problems. It only solves the problem of text that is bigger than the usercontrol/canvas.
You still have to wait for the End of the text to reach the left of the screen before it will start over.
|
|
|
|
|
|
I've look at that i tried the "Answer" given on that page but I don't know what to do with the "SignConverter" part. The description says "The sign converter just takes a number and returns its negative value."
So when I didn't knew what it exactly did I put it in commentary and ran the project and saw it wasn't doing what I want.
But is that the part that ensures the text to start when is has not ended?
Kevin
By the way. Sorry for my crappy English.
|
|
|
|
|
Kevin,
Your English is just fine, no worries.
I'm SUPER busy for the next 2 weeks, almost every moment of the day is taken up with preparation for Code Camp and article writing.
I might be easier to just write this. You need to create a class that exposes a circular buffer that you can read from, then using a System.Times.Timer in your UserControl display the text from the buffer.
Write me in 2 weeks if you have not got this done and I'll write one and place it on my blog.
modified 27-Feb-21 21:01pm.
|
|
|
|
|
Well thanks for the idea i've never used something like a circular buffer before but i'll see if i can create one.
Thanks for your help and good luck with Code Camp.
I'll let you know in two week if I made any progress.
Greets,
Kevin
|
|
|
|
|
Well Karl,
I got nowhere with a circular buffer so I put it aside and went on with some other things.
But it often crossed my mind and from what I got to understand of the idea you would still remove a character at the beginning an add one at the end. Would this give you a "smooth animation"?
Thanks,
Kevin
|
|
|
|
|
Yes. It would also give you the ability to play a sound between characters, like a type writter key click.
modified 27-Feb-21 21:01pm.
|
|
|
|
|
Are you going to create an article about this?
Could you send me a mail if you do. Because somehow this option "Notify me by e-mail if someone answers this message" doesn't work. So everytime I have to search these postings again.
Greets, Kevin
|
|
|
|
|
Kevin,
I'll post a reply here when I post the code.
modified 27-Feb-21 21:01pm.
|
|
|
|
|
|
|
Hello All,
I was assinged to create/find a silverlight application which should be like media player.
I got success in getting application from here.
When I downloaded it and run it on my machine it runs well, but as I tried to create web Part for the same it does not display anythind in the Web Part.
While debugging (using alerts) I found that the function in StartPlayer.js file EePlayer.Player._getUniqueName("xamlHost"); returns nothing and hence it is not displaying anything.
Now as I am very new to silverlight and also for Javascript I stuck up here.
Can anyoine please let me know what should I do to make it run in SharePoint Web Part?
Thanks in Advance
Paras Kaneriya
Paras Kaneriya The difference between genius and stupidity is that genius has its limits.
|
|
|
|
|
Hello,
The ID of the DIV where you host Silverlight content might be changed in SharePointWebPage. Can you please view the code at runtime and find out what the actual id is?
|
|
|
|
|
How can one apply an application style to the Common Dialogs? I've got a dark style going on in my app and this file open dialog is so bright it is jarring. Any ideas?
<br />
Microsoft.Win32.OpenFileDialog dlg = new Microsoft.Win32.OpenFileDialog();<br />
dlg.FileName = "Document";
dlg.DefaultExt = ".txt";
dlg.Filter = "Text documents (.txt)|*.txt";
<br />
Nullable<bool> result = dlg.ShowDialog();<br />
<br />
if (result == true)<br />
{<br />
string filename = dlg.FileName;<br />
}<br />
Sincerely,
-Ron
|
|
|
|
|
Ron,
Dialog boxes are generally styled according to the operating system, as opposed to the UI that opened them since the users desktop theme will be used to style the dialog box. Example, Windows XP and Vista File Open dialogs look and work slightly different and are styled according to the users desktop theme.
If you check out the WPF SDK, there is a Vista Bridge library that gets you going with using dialog boxes that are operating system specific. I have been hoping that Microsoft would bake operating system dialogs into .NET so that no matter which O/S was running the correct dialog for that O/S would display without a lot of extra work on the developers part.
You "could" always write your own... No fun working with the Win32 API if you don't really have to.
Sorry I could be of more help.
modified 27-Feb-21 21:01pm.
|
|
|
|
|
Even for a message box?
Sincerely,
-Ron
|
|
|
|
|
Ron,
Yes. Give this article a look: http://www.codeproject.com/KB/WPF/WPFTaskDialogVistaAndXP.aspx[^]
This is where you need to make a decision. You can have all custom dialogs or use the operating system ones.
For the message boxes, I wanted my XP users to have the rich features of the TaskDialog so I wrote the above library to provide that.
I also have similar boxes for my file dialogs.
modified 27-Feb-21 21:01pm.
|
|
|
|