|
Hi Dave,
you're welcome.
I have the Pro WPF one, haven't opened it yet.
There may be better in the mean time, I haven't seen any higher recommendation though.
|
|
|
|
|
|
|
Sorry mate - I've been away for a couple of days; Luc's answer is pretty comprehensive - Adam Nathan has a new book out on WPF and it's really good - you can also learn a lot from Josh Smith, Karl Shifflett, Sacha Barber (or even my article on moving to WPF from ASP.NET).
|
|
|
|
|
Thanks Pete, hope you've had a good time away. I was up your way-ish last week in Hartlepool, an 'interesting' place!
I've ordered Pro WPF! I've had a search around and bookmarked a few things. Josh, Karl and Sacha are quite legendery of course I'm sure I'll be visiting their and your stuff in time. A well structured book is hard to beat though when approaching a new subject I think.
I'm quite looking forward to the challenge. It's the XAML "look at what you can do without any code at all" type things I came across that have put me off until now. I've always been a dig into the dirty code type, not a drag and drop automagic coder so that side of it doesn't really appeal to me. I'll see how it goes I suppose.
|
|
|
|
|
You should have dropped me a line - I'd have come down to meet you for a few drinks. Anyway, I started off my XAML career handcrafting it, the Cider designer used to be too buggy to use properly. If you handcraft it, you soon get a feel for how it all hangs together.
|
|
|
|
|
Source Code:
WPF GIF Animation
Current situation:
The animation is run in a list but I want that the animation run without a list.
My current code:
using System;
using System.Windows;
using System.Drawing;
using System.Diagnostics;
using WpfAnimatedControl;
using System.Windows.Documents;
using System.Collections.Generic;
namespace AnimatedControlTester
{
public partial class Window1 : Window
{
public Window1()
{
InitializeComponent();
rich.Document = new System.Windows.Documents.FlowDocument();
Paragraph p = new Paragraph();
AnimatedImage aimg = new AnimatedImage();
aimg.Stretch = System.Windows.Media.Stretch.None;
System.Drawing.Image img;
img = AnimatedControlTester.Resources.Hexe;
aimg.LoadSmile((System.Drawing.Bitmap)img);
p.Inlines.Add(aimg);
rich.Document.Blocks.Add(p);
image1.Source = p;
}
private void aimg_AnimatedBitmapChanged(object sender, RoutedPropertyChangedEventArgs<Bitmap> e)
{
Debug.WriteLine("AnimatedBitmapChanged event occured, add extra code here if necessary.");
}
}
}
Error on line:
image1.Source = p;
Error:
Cannot implicitly convert type 'System.Windows.Documents.Paragraph' to 'System.Windows.Media.ImageSource'
|
|
|
|
|
I have solve the problem on an easier way:
XAML:
<RichTextBox Height="223" HorizontalAlignment="Left" Margin="53,72,0,0" Name="rich" VerticalAlignment="Top" Width="182" BorderThickness="0" VerticalScrollBarVisibility="Disabled" HorizontalScrollBarVisibility="Disabled">
<RichTextBox.Background>
<SolidColorBrush />
</RichTextBox.Background>
|
|
|
|
|
i have two forms(Form1 and Form2).i open Form2 as a child of Form1 with the code below..
Form2 frm2 = new Form2();
frm2.MdiParent = this;
frm2.Show();
but Form2 is opened under of Form1's controls..how i will get it front..i tried right click and send back to all controls in Form1 but still nothing..what should i do now ?
|
|
|
|
|
This question should be placed into Windows Forms forum. I will answer anyway, but try to use the right forum next time.
Usually the visible controls used within a MDIContainer Form should be MenuStrip, StatusStrip and ToolStrip. What controls are you using in Form1?
|
|
|
|
|
i have two datagridviews and buttons in parent form..but i think there will be more controls like textboxes..so what can i do now
i tried also
frm2.TopMost=true;
frm2Activate();
but i couldnt get the result
|
|
|
|
|
Ok, I see. Add a ToolStripContainer to Form1, change its Dock property to Top, and move all that stuff you have in Form1 into this ToolStripContainer.
|
|
|
|
|
thanks for the reply friend..i tried like
Form2 frm2 = new Form2();
frm2.MdiParent = this.MdiParent;
frm2.Show();
it is opened on other controls but when i want to minimize i want to stay it in main form but it is seen on task bar
how i will manage it ?
modified on Saturday, October 23, 2010 8:01 AM
|
|
|
|
|
|
thanks for reply..i tried that too..but it is not the thing i want exactly..in that style it stays a little upper than task bar.. i want it to be minimized in my form1
|
|
|
|
|
It is here:
frm2.MdiParent = this.MdiParent;
I guess your Form1 MdiParent is null, so you are setting null to MdiParent property of your frm2, and it opens as a "not MdiChild" form. It should be:
frm2.MdiParent = this;
Place your code into a <pre> tag for posting it here in the forum. It will be easier to read for us.
Bye
|
|
|
|
|
ok friend
thanks for your help
|
|
|
|
|
Hello Everybody,
I am tring to create a Function with Optional Argument but it generate an error.
Error Default parameter specifiers are not permitted
What is wrong with that?
Thanks
If you can think then I Can.
|
|
|
|
|
Hi,
C# only supports optional parameters since C# 4.0 If you compile your code using an earlier version you will get this error. Please make sure you have selected .Net 4.0 as target framework of your project. If you are not going to use .Net 4.0 you will need to use overloads to achieve the same goal as using optional parameters.
|
|
|
|
|
Which version of C# are you using?
Optional parameters are only permitted in C#4.0.
The funniest thing about this particular signature is that by the time you realise it doesn't say anything it's too late to stop reading it.
My latest tip/trick
Visit the Hindi forum here.
|
|
|
|
|
I wrote an article about Optional Arguments here[^] it explains the syntax. As the other posters said, you need to use .NET 4 first.......
|
|
|
|
|
Thank u everybody
If you can think then I Can.
|
|
|
|
|
Hi I am trying to figure out why my method keeps only showing me the first character from a sent string. I would like it to show all the characters that were sent.
public void OnDataReceived(IAsyncResult asyn)
{
try
{
SocketPacket socketData = (SocketPacket)asyn.AsyncState;
int iRx = 0;
iRx = socketData.currentSoc.EndReceive(asyn);
char[] chars = new char[iRx];
System.Text.Decoder d = System.Text.Encoding.UTF8.GetDecoder();
int charLen = d.GetChars(socketData.dataBuffer, 0, iRx, chars, 0);
System.String szData = new System.String(chars);
MessageBox.Show(szData);<<<<<<<<<<<<What ever message is sent is supposed to show up in this message box...
WaitForData(socketData.currentSoc);
}
catch (ObjectDisposedException)
{
System.Diagnostics.Debugger.Log(0, "1", "\nOnDataReceived: Socket has been closed\n");
}
catch (SocketException se)
{
MessageBox.Show(se.Message);
}
}
|
|
|
|
|
Instead of
System.String szData = new System.String(chars)
you could try
StringBuilder str = new StringBuilder();
for (int x = 0; x < charLen; x++)
{
str.Append(chars[x]);
}
I haven't had a problem with that.
Brent
|
|
|
|
|
Hate to break it you, but this had no effect.
|
|
|
|