|
Were you able to print the form ?
|
|
|
|
|
When dragging and dropping a file onto a control with AllowDrop set to true, how do we access the name of the dropped file?
|
|
|
|
|
In your DragDrop handler you would use the Data.GetData method of the DragEventArgs which will return an array of strings. As an example, to capture a file(s) dropped on a Form:
private void Form1_DragDrop(object sender, System.Windows.Forms.DragEventArgs e)
{
object ob = e.Data.GetData(DataFormats.FileDrop, true);
if(ob!=null)
{
System.Array files = (System.Array) ob;
foreach(string file in files)
System.Diagnostics.Debug.WriteLine(file);
}
}
Rocky Moore <><
|
|
|
|
|
|
I have this text file "demo.txt" that's just straight 1 and 0s, no formatting or anything...
I need to format the file like this...
14 columns with a space between each, and with 4 characters in each... like this...
0000 0000 0000 0001 0101 C130 0000 0000 0000 0000 0000 0000 0000 0D20
and after 14 columns start a new line, and just do that for the whole "demo.txt"...
How can I do this?
/\ |_ E X E GG
|
|
|
|
|
This needs to be tested and fixed, but its close. I'm sure there are better ways of doing this.
using System;
using System.IO;
using System.Collections;
using System.Collections.Specialized;
public class Class1
{
public static void FormatFile(string text2read)
{
const char EOF = char.MaxValue;
TextReader reader = new StringReader (text2read);
BitVector32 vector = new BitVector32 (0);
ArrayList al = new ArrayList ();
char bit = (char) reader.Read ();
int pos = 0;
while (bit != EOF)
{
vector[pos] = Convert.ToBoolean (bit);
pos++;
if (pos == 32)
{
al.Add (vector.Data);
vector.Data = 0;
pos = 0;
}
bit = (char) reader.Read ();
}
int index = 0;
const int width = 14;
const string format =
"{0:x0000} {1:x0000} {2:x0000} {3:x0000} {4:x0000} " +
"{5:x0000} {6:x0000} {7:x0000} {8:x0000} {9:x0000} " +
"{10:x0000} {11:x0000} {12:x0000} {13:x0000}";
int[] vals;
while (index + width < al.Count)
{
vals = (al.GetRange (index, width)).ToArray (typeof (int)) as int[];
Console.WriteLine (format, vals);
index += width;
}
}
}
α.γεεκ Fortune passes everywhere. Duke Leto Atreides
|
|
|
|
|
It says "C:\Documents and Settings\Alex Egg\My Documents\Visual Studio Projects\ConsoleConvert\Class1.cs(1): Property or indexer 'System.Collections.Specialized.BitVector32.Data' cannot be assigned to -- it is read only"
What's that mean?
/\ |_ E X E GG
|
|
|
|
|
|
It was not my intention to write the code for you. Rather to give you direction so you might grow on you own. Thus "this code needs to tested and fixed."
Now - What does "Its read-only" sound like? That its read only.
Now, try replacing:
vector.Data = 0;
with:
vector = new BitVector32 (0);
α.γεεκ Fortune passes everywhere. Duke Leto Atreides
|
|
|
|
|
Please tell me how to program an application that can run at exactly time that user configure. Some thing like Windows'sheduled tasks.Thanks.
Where there is a will, there is a way
(Unknown)
|
|
|
|
|
Another application should be run at background and take care of it. This program should have a thread(or timer) that run for every one second for example,and check the settings. If its the time then run that program.
Mazy
No sig. available now.
|
|
|
|
|
Do you know any VS 2003 to VS.NET project converter?
I need to convert a complex project created in VS 2003 to VS.NET.
Thank you
|
|
|
|
|
If you have a VS.NET 2002 project, make a backup of it, open it in VS.NET 2003 and then diff the two. You'll see that there are very few changes and that they are easy to do by hand (which is one of the points about doing XML - anything can read, write, and parse it - including humans!).
For all my projects at work (which are many, though there is not really any level of difficulties as you say), the version was different and there were a couple of extra attributes in a couple of the elements. Changing these worked nicely.
-----BEGIN GEEK CODE BLOCK-----
Version: 3.21
GCS/G/MU d- s: a- C++++ UL@ P++(+++) L+(--) E--- W+++ N++ o+ K? w++++ O- M(+) V? PS-- PE Y++ PGP++ t++@ 5 X+++ R+@ tv+ b(-)>b++ DI++++ D+ G e++>+++ h---* r+++ y+++
-----END GEEK CODE BLOCK-----
|
|
|
|
|
|
|
my company have server to login, and can chat local with MSN
I want that how to connect to it with my program, someome can give me some idea to solve it
thanks
Nho'c ti`
|
|
|
|
|
Hello, I am a newbie at C#. I am trying to make a text box only allow alpha characters, such as a - z upper and lower case, the backspace, and space keys. How would i write that in the keypress event and how do i get it to activate on that text box? thanks any help will be appreciated.
|
|
|
|
|
Something like this should get you started:
private void textBox1_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
{
base.OnKeyPress(e);
if (Char.IsLetter(e.KeyChar) || Char.IsPunctuation(e.KeyChar)
|| Char.IsSeparator(e.KeyChar) || Char.GetNumericValue(e.KeyChar) == -1)
e.Handled = false;
else
e.Handled = true;
}
-Nick Parker
|
|
|
|
|
well thanks for the help anyways but it doesn't work. i can still type numbers and wierd characters into the text box. Does anyone else have any ideals?here is what my teacher showed us in class but i can't get anything out of it? thanks
private void Form1_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
{
if (e.KeyChar < 'a'||e.KeyChar > 'z')&& e.KeyChar != '\b')
e.Handled = true;
}
|
|
|
|
|
kharr1027 wrote:
private void Form1_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
{
if (e.KeyChar < 'a'||e.KeyChar > 'z')&& e.KeyChar != '\b')
e.Handled = true;
}
A few things, first of all I just re-tried the code example I gave you and it does work, however I noticed in the code example you listed you have Form1_KeyPress which appears that you have an event handler registered for the KeyPress event of a Form , not a TextBox . Make sure whatever the name of your textbox that you add to your form includes the following event/delegate assignment (for this example the name of my textbox is simply the default of textBox1 ):
this.textBox1.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.textBox1_KeyPress);
then the following will work to only allow alphabetic characters, space and backspace entries:
private void textBox1_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
{
base.OnKeyPress(e);
if (Char.IsLetter(e.KeyChar) || Char.IsPunctuation(e.KeyChar)
|| Char.IsSeparator(e.KeyChar) || Char.GetNumericValue(e.KeyChar) == -1)
e.Handled = false;
else
e.Handled = true;
}
-Nick Parker
|
|
|
|
|
Character codes. Look them up and compare them. Filter out what you dont want.
You set e.Handled to true when you dont want the character entered. Other wise
if it is valid e.Handled = false;
|
|
|
|
|
Dear all,
I've got a problem on controlling Numermic UpDownControl. In my application, I have 6 UpDownControl, they are L, R, Top, Bottom, width and height. now I would like to check the input of L value is over range or not.
the default maxValue of L is set to 200, and it is various of "width", that's means, if L or R decrease, width will be decreased. The equation is
DWidth = L + R + "Width"
The following code, I check if the "width" value is met its minimum value, then L, R, can't be increased.
<br />
private void LUpDown_ValueChanged(object sender, System.EventArgs e)<br />
{<br />
if(OwnChanged)<br />
return; <br />
<br />
if(!AngleChange && !changeValueOnly)<br />
{<br />
if(Angle == 0)<br />
{<br />
decimal range =DWidth- LUpDown.Value - RUpDown.Value;<br />
<br />
if(range < SizeWUpDown.Minimum)
{ <br />
OwnChanged=true;<br />
LUpDown.Value = DWidth - SizeWUpDown.Minimum - RUpDown.Value; <br />
OwnChanged=false;<br />
}<br />
changeValueOnly = true;<br />
SizeWUpDown.Value = DWidth- LUpDown.Value - RUpDown.Value; changeValueOnly = false;<br />
}<br />
else<br />
{ ..... }
if the value is over its minVaule, I will set back the value of L like "equ1", then it will activate its valueChanged event again, so I use OwnChanged to prevent it. The problem is I don't know why the "problem?" line can't execute, and this function will be return once it reach this line..
I just know, If I cross out LUpDown.Value in "problem?" line,like
SizeWUpDown.Value = DWidth - RUpDown.Value; //<---problem?
the program can pass this instruction.
Am I do it in wrong way? How can I solve it?
Please Help... Thanks
|
|
|
|
|
Is there a way to create a managed array from a pointer to a block of unmanaged memory? I need to allocate a bunch of memory outside of the garbage collector, but I also need to access it through a managed byte array. Is this even possible? Right now, I'm creating the managed array and using a pointer to the first element, but this has a random habit of breaking when the garbage collector decides to move the managed memory around .
Updating the pointer to the new location isn't really an option, as the pointer is being passed to an unmanaged DLL (which blows up when the GC moves the memory ).
Josh
Find a penny, pick it up, and all day long you'll have a back-ache...
|
|
|
|
|
Try this[^] and this[^].
α.γεεκ Fortune passes everywhere. Duke Leto Atreides
|
|
|
|
|
Thanks for the links. I'd already read the article on pointers, but missed the article on arrays. Unfortunately, I didn't see anything in the array article that would help me create a managed array reference to an unmanaged memory block. I'll just have to think harder, I guess.
Josh
Find a penny, pick it up, and all day long you'll have a back-ache...
|
|
|
|