|
bfis108137 wrote: How do you change programatically which button is selected and which field has the cursor in it so the user doesn't have to keep tabbing or clicking
|
|
|
|
|
Hi guys, bit of a problem here, im attempting to write an orm layer for myself and i cant seem to figure this one out.
i style class properties with a custom attribute:
[ORMProperty("ID")]
public int ID { get; set; }
[ORMProperty("Name", typeof(Name))]
public Name CustomerName { get; set; }
normally i would use: Name wtf = Name.Deserialize("SOMEBASE64SERIALIZEDSTIRNG"); to create the string back into a class. now, what i would like to do is take the value of the typeof() while doing the reflection, create an instance of that class, call its .Deserialize(), and then set the result as the appropriate reference to that property.
|
|
|
|
|
damianrda wrote: now, what i would like to do is take the value of the typeof() while doing the reflection, create an instance of that class, call its .Deserialize(), and then set the result as the appropriate reference to that property.
When? How? What part of your system? You have not provided enough information for us to understand your design. Do you have previous experience authoring and using custom attributes?
led mike
|
|
|
|
|
Hi,
I am creating a panel which derives from Panel.
This panel should be able to Autoscroll vertically but not horizontally.
However, I did not find a way to disable scrolling only for one direction (although one can not show the scrollbar this won't avoid growing of the Displayrectange in that direction).
please advise,
Eyal
|
|
|
|
|
Hi
Is it possible to write in a text file with a color other than black?
How?
|
|
|
|
|
mahraja wrote: Is it possible to write in a text file with a color other than black?
Yes, simple!
File.Write(" "), see, it's white now...
|
|
|
|
|
Huh? I write in grey-on-blue.
|
|
|
|
|
No, not directly because a text file only contains unicode characters, which don't have color information.
You could automate Wordpad or Word to write a .rtf or .doc file which can contain color information.
A simpler alternative might be to define your own file header format, containing color information (and anything else you want). Then your application could read this header and display the following text in the desired color.
|
|
|
|
|
Alan Balkany wrote: automate Wordpad or Word
Or use a RichTextBox.
Alan Balkany wrote: define your own file header format
Or use XML.
|
|
|
|
|
Or use a RichTextBox.
Good idea.
|
|
|
|
|
idiot.
"Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt, 1997 ----- "...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001
|
|
|
|
|
You really shouldn't keep your feelings bottled up John.
Why is common sense not common?
Never argue with an idiot. They will drag you down to their level where they are an expert.
Sometimes it takes a lot of work to be lazy
Individuality is fine, as long as we do it together - F. Burns
|
|
|
|
|
If his question was worded more precisely, I wouldn't have to hold back like that.
File bits are color-agnostic...
"Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt, 1997 ----- "...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001
|
|
|
|
|
Wow.... Do you have a flock of uni-voters around you like celebrities have paparazzi?
Why is common sense not common?
Never argue with an idiot. They will drag you down to their level where they are an expert.
Sometimes it takes a lot of work to be lazy
Individuality is fine, as long as we do it together - F. Burns
|
|
|
|
|
mahraja wrote: Hi
Is it possible to write in a text file with a color other than black?
How?
Usually you can only write in 1 color unless you can find a rainbow colored floppy disc....
|
|
|
|
|
Hello,
i have a problem with following code:
byte[] Buffer = new byte[clientConnection.ReceiveBufferSize-1];
int i = clientConnection.GetStream().Read(Buffer, 0, clientConnection.ReceiveBufferSize-1);
String result = System.Text.Encoding.ASCII.GetString(Buffer,0,clientConnection.ReceiveBufferSize-1);
Console.WriteLine("INCOMING PACKAGE: " + result);
So there i want to read something from a TCPClient-Stream, but it doesnt work really. Yes i get my data, but with the data a lot of "space bars". Well my string should look like this:
"INCOMING PACKAGE: Hello World!" but it looks like "INCOMING PACKAGE: Hello World! ..." (Buffer Length was over 8000 Bytes long)
So how to solve this problem? What do i wrong?
|
|
|
|
|
softwarejaeger wrote: String result = System.Text.Encoding.ASCII.GetString(Buffer,0,clientConnection.ReceiveBufferSize-1);
Just do:
String result = System.Text.Encoding.ASCII.GetString(Buffer); It will figure out the length.
|
|
|
|
|
Yes, but that doesn't solve my problem, i get a string with 8191 characters, and the most of them are "empty"
|
|
|
|
|
softwarejaeger wrote: and the most of them are "empty"
Are they 'empty' as in whitespace, or 'empty' as in \0? If it is the latter, you are dealing with binary data, and you need to parse/delimit it yourself first.
|
|
|
|
|
You're over-analyzing. He wants a byte array that contains his data, which isn't necessarily 8k big. I think the solution I provided is what he wants.
"Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt, 1997 ----- "...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001
|
|
|
|
|
i had found the failure... now it works ...
|
|
|
|
|
byte[] Buffer = null;
int buffSize = clientConnection.ReceiveBufferSize-1;
int i = clientConnection.GetStream().Read(Buffer, 0, buffSize);
String result = System.Text.Encoding.ASCII.GetString(Buffer);
Console.WriteLine("INCOMING PACKAGE: " + result);
The byte array will never be larger than the amount of data returned, so you can convert it to a string in it's entirety without worrying about how big it is and how much actual data it contains.
"Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt, 1997 ----- "...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001
|
|
|
|
|
John Simmons / outlaw programmer wrote:
//do NOT allocate the array
byte[] Buffer = null;
That's just wrong dude! You never create it! Your code WILL FAIL!
FileStream::Read in Reflector.
public override int Read([In, Out] byte[] array, int offset, int count)
{
if (array == null)
{
throw new ArgumentNullException("array", Environment.GetResourceString("ArgumentNull_Buffer"));
}
|
|
|
|
|
No, it won't, and I've got code to prove it. The function I'm calling returns an allocated array. That means I don't have to allocate it myself. However, I do have to initialize it to null so that it works on the first call.
BinaryReader reader = null;
FileStream streamSource = null;
byte[] fileBytes = null;
try
{
streamSource = new FileStream("c:\\myfile.dat", FileMode.Open, FileAccess.Read, FileShare.None);
reader = new BinaryReader(streamSource);
do
{
fileBytes = reader.ReadBytes(65536);
if (fileBytes.Length != 0)
{
}
} while (fileBytes.Length != 0);
}
catch (Exception ex)
{
if (ex != null) {}
this.m_lastError = 33;
}
finally
{
if (reader != null)
{
reader.Close();
}
if (streamSource != null)
{
streamSource.Close();
}
}
In the example I posted, fileBytes will contain one of three thins - a 65536-byte array, and n-byte array (comprised of the last bit of data in the file), or a 0-byte array, indicating no data read from the file (EOF).
In each of those three cases, the array is exactly the length of the retrieved data, and the array is never "null".
"Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt, 1997 ----- "...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001
modified on Thursday, August 7, 2008 12:12 PM
|
|
|
|
|
BinaryReader.ReadBytes and Stream.Read are two very different things.
Please get some basic understanding of C# - a variable can't magically switch from null to a (array) reference. The only ways a local variable can change value is
a) you assign something to it (e.g. "fileBytes = reader.ReadBytes(65536);")
b) you pass it by reference (with an explicit "ref" at the call site)
c) calling a method on a value type variable can change that variable's value (for value types "a.X()" basically does "X(ref a)")
So a method call like "Read(Buffer)" can NEVER change the value of Buffer - it can change the contents Buffer points to, but it cannot change Buffer to point to a different array.
And you don't need to initialize with null "so it works on the first call". You'll get a compiler error when trying to use an uninitialized variable. This is C#, not C++.
Edit: and I forgot: your BinaryReader code will always try to read the full 65536 bytes, or until end of stream. This is fine for files; but reading a network stream, you usually need to process an incoming request immediately and not when the 65536 bytes are full or the client disconnects.
modified on Thursday, August 7, 2008 12:36 PM
|
|
|
|