|
It should also be noted that in the case of converting a string to an int via the Convert class it calls Int32.Parse.
James
Simplicity Rules!
|
|
|
|
|
Good point, James. I'm so accustomed to using the Convert class for everything that I never think about Parse.
Cheers,
Tom Archer
Author, Inside C#
A total abstainer is one who abstains from everything but abstention, and especially from inactivity in the affairs of others.
|
|
|
|
|
thx... i was looking for this conversion in string class. As I can see there is special class to conversions.
|
|
|
|
|
So I guess my followup question would be when to use one or the other (parse vs. convert). Also, is parse more efficient? Just looking for some guidelines here.
|
|
|
|
|
Convert can convert from all intrinsic datatypes to the other types; parse only accepts strings. Convert also calls the appropriate parse method when converting a string to that format except when converting UInt32 which isn't CTS compliant and converting string to string where it just returns the value .
I would use Convert for consistancy in code, but in some cases, Parse will take a few extra parameters you may wish to use.
HTH,
James
Simplicity Rules!
|
|
|
|
|
How do i create a control that when painted, does not show up on the form, but rather on the bottom like an imagelist does?
|
|
|
|
|
Have your class inherit from System.ComponentModel.Component instead of System.Windows.Forms.Control.
HTH,
James
Simplicity Rules!
|
|
|
|
|
hello,
this by the way is an excellent article. shows how to deal with the CodeDom object. i've been making some use of this object with some success.
i can create the dll and write it to disk. the problem is that i'm trying to write the dll being generated to a directory of my choice.
codeCompiler.CompileAssemblyFromSource(compilerParamaters, sourceWSProxy);
this line automatically generates the dll in the bin\Debug of the application directory. i can't seem to over ride this.
hope someone can help with this one.
thanks
Orion
Orion
|
|
|
|
|
Um, what article?
Cheers,
Tom Archer
Author, Inside C#
A total abstainer is one who abstains from everything but abstention, and especially from inactivity in the affairs of others.
|
|
|
|
|
This one
James
Simplicity Rules!
|
|
|
|
|
hello Tom,
if you search this site for ICodeCompiler or CodeDom you should get a couple of articles. one by Konrad Rotuski "C# Compiler" and the other by Shawn Wildermuth "Runtime C# Expression Evaluator
". both are basically the same.
here's the link to the first one.
http://www.codeproject.com/csharp/cscompiler.asp
thanks
Orion
|
|
|
|
|
Yeah. I know where the article is.
The subtle point was to let you know that you need to include links like this instead of assuming the people helping out here have the time to go searching for them
Cheers,
Tom Archer
Author, Inside C#
A total abstainer is one who abstains from everything but abstention, and especially from inactivity in the affairs of others.
|
|
|
|
|
your right. my apologies
did you need any other info?
the ICodeCompiler doesn't have any properties i can set. and the dll will be written before its assigned to the CompilerResults object.
ideally i'd like to write it to the MS temp directory.
Orion
Orion
|
|
|
|
|
Orion Buttigieg wrote:
your right. my apologies
No worries. Just saves us time.
Orion Buttigieg wrote:
the ICodeCompiler doesn't have any properties i can set. and the dll will be written before its assigned to the CompilerResults object. Ideally i'd like to write it to the MS temp directory
Actually, I've not worked through the demo and haven't needed to do what you're talking about. If nobody has figured this out by the time I get home (I'm on the way to pick up kids now), I'll look at it tonight and try and help.
Cheers,
Tom Archer
Author, Inside C#
A total abstainer is one who abstains from everything but abstention, and especially from inactivity in the affairs of others.
|
|
|
|
|
hiho,
does anyone know/has (a url to) a tutorial or some better-than-msdn-documentation on the ImageEncoder-EncoderParameters-overload of the save function? i want to be able to set the jpeg-quality, tiff-compression and all these things by hand. and to be kind: msdn-docu isn't very helpful.
thx in advance
:wq
|
|
|
|
|
ups! i did find something in msdn - somewhere deep inside is a little example that helps me.
:wq
|
|
|
|
|
Curiosity !
Has anyone had any problem with unmanaged resources like handles etc ?
Or Is the garbage collection catching them all ?
Regardz
Colin J Davies
Sonork ID 100.9197:Colin
More about me
|
|
|
|
|
Colin Davies wrote:
Has anyone had any problem with unmanaged resources like handles etc ?
What do you mean by that? If you are writing a C# program, everything is managed. You can't access an unmanaged resource. Unless you meant something else.
Nish
Check out last week's Code Project posting stats presentation from :-
http://www.busterboy.org/codeproject/
Feel free to make your comments.
|
|
|
|
|
An unmanaged resource is a file, database connection, HPEN, HDC, HBITMAP, etc... There are wrappers around all of those resources each providing you with a Dispose method which will free the handle; in the case of Files and Database Connections you have appropriate Close methods you can call as well.
James
Simplicity Rules!
|
|
|
|
|
Thanks James. But my idea was that Dispose is automatically called. I wasn't aware that we need to call it manually. Unless we are talking of our own wrapper class.
Nish
Check out last week's Code Project posting stats presentation from :-
http://www.busterboy.org/codeproject/
Feel free to make your comments.
|
|
|
|
|
My issue is what happens on exit ?
Since the poointer is hadling the addresses on the stack where will it be left ?
Then what happens if I run a new instance of the App ?
Regardz
Colin J Davies
Sonork ID 100.9197:Colin
More about me
|
|
|
|
|
Irrespective of whether it's a .NET app or an unmanaged Win32 app, when a process terminates, all resources are freed.
Nish
Check out last week's Code Project posting stats presentation from :-
http://www.busterboy.org/codeproject/
Feel free to make your comments.
|
|
|
|
|
Dispose isn't automatically called; the Finalize method is, at some point in time.
For handling nonmanaged resources Microsoft has come up with the Dispose pattern, classes that work with nonmanaged resources are supposed to implement IDisposable (only method is Dispose).
In side that the managed resources are released and the object should throw an exception if an attempt is made to use that instance again. Also inside of the Dispose method you should call GC.SuppressFinalize(this); so that the finalizer doesn't get called (no need since you already freed your resources). The finalizer is supposed to just call Dispose.
Confused yet?
Enter the using construct. With it you can specify that an object will have its Dispose method called automatically.
using(Graphics g = CreateGraphics())<br />
{<br />
}
Roughly translates to
Graphics g = CreateGraphics();<br />
try<br />
{<br />
}<br />
finally<br />
{<br />
((IDisposable) g).Dispose();<br />
}
Simplicity Rules!
|
|
|
|
|
Thanks a LOT James. I sorta understand now
Man, I wrote all that code and I never knew about all this inside stuff.
I feel a little silly
Nish
p.s, CG was telling us to stop bothering you with questions, so you can finish the saver
Check out last week's Code Project posting stats presentation from :-
http://www.busterboy.org/codeproject/
Feel free to make your comments.
|
|
|
|
|
Nish [BusterBoy] wrote:
p.s, CG was telling us to stop bothering you with questions, so you can finish the saver
LOL, yeah I was busy writing my first reply when I was supposed to be seeing why the drawing didn't speed up even though my test program shows ~80% increase in drawing
James
Simplicity Rules!
|
|
|
|