|
Hello everyone,
I have a ContextMenu in my Windows Application and I am trying to change it's property but I am unable to do so. For some reason when I change the size of the "Seperator" it goes back to what it was before!!!
Can someone tell me what is going on here and how I can change the size of seperators in my ContextMenu.
Thank you very much and have a great day
Khoramdin
|
|
|
|
|
Hi,
you should be able to draw a menu item yourself, by setting OwnerDraw true, and
providing MeasureItem and DrawItem event handlers.
|
|
|
|
|
Hello Luc,
Thanx for the help. If I am not mistaken base on your suggestion I can customize the entire ContextMenu. That is something which I might consider if there is no other way to get what I am looking for.
The problem is what I am looking for is very simple. I wish to reduce the width of the seperator in the ContextMenu as it overlaps the image that I have placed on the left hand side of the ContextMenu.
Thanx for your help, mate.
Khoramdin
|
|
|
|
|
hi
for change the size property u must first set autosize property to false.
|
|
|
|
|
Hello Maryamf,
Thanx for the reply. That is what I thought initially and believe me when I tell you that I tried it. for some reason the Hight works fine but Width setting is not working. It is fix to what it was picked initially by the Contoller. All I wish to do is to reduce the width of the "Seperator" and align in to the left. Just the way the ContextMenu in Visual Studio is!
Thank you for your help, mate.
Khoramdin
-- modified at 13:23 Sunday 15th April, 2007
|
|
|
|
|
dear all ;
i made an array to save mouse position for 10 seconds and the array contains 10000 elements how can i see all the array elements in text box.
thank you.
ahmad al-omar
ahmad al-omar
|
|
|
|
|
You could do something along these lines:
string s="";
for(int i=0;i<mouseArray.length;i++)
s+=mouseArray.toString();
this.textBox1.Text=s;
I would assume mouseArray would be an array of points.
Regards,
Thomas Stockwell
Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning.
Visit my homepage Oracle Studios[^]
|
|
|
|
|
You should use a StringBuilder for that.
|
|
|
|
|
They both accomplish the same thing don't they. Or is their another advantage to using a StringBuilder. I pretty much just use StringBuilder with API commands.
Regards,
Thomas Stockwell
Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning.
Visit my homepage Oracle Studios[ ^]
|
|
|
|
|
Yes they both accomplish the same thing. However, with the String object, you will create several thousands of temporary String objects since they are immutable. With a StringBuilder object, you only create one object (plus the final String object) and you can manage memory allocation.
"We make a living by what we get, we make a life by what we give." --Winston Churchill
|
|
|
|
|
thank you its work but its appears as (System.Int32[]) all the values are the same
ahmad al-omar
|
|
|
|
|
Try this instead:
StringBuilder sb = new StringBuilder();
for(int i=0;i<mouseArray.Length;i++)
{
sb.Append(mouseArray[i].ToString());
sb.Append(Environment.NewLine);
}
this.textBox1.Text=sb.ToString();
|
|
|
|
|
thank you its work but its appears as (System.Int32[]) all the values are the same
ahmad al-omar
|
|
|
|
|
Hi,
I would suggest you consider a ListBox instead of a TextBox;
it avoids having to concatenate all the strings and will result in much better
performance.
|
|
|
|
|
I would suggest you use arraylist achieve as mentioned by others, for more information on arraylist visit....
http://msdn2.microsoft.com/en-us/library/system.collections.arraylist(VS.71).aspx
Regards,
Jaiprakash M Bankolli
jaiprakash.bankolli@gmail.com
http://jaiprakash.blog.com/
|
|
|
|
|
In the code below:
string temp = "http://www.com:8080/";
string pattern = @"^(?<protocol>\w+)://[^/]+?(?<port>:\d+)?/";
Regex r = new Regex(pattern, RegexOptions.Multiline);
MessageBox.Show(r.Match(temp).Result("${prot}${port}"));
I wonder what [^/]+? means and how it matches the temp string, while if I omit ? in [^/]+ it wouldn't give me the correct result. I have read something about lazy plus which is +? but it rather confused me . Does anybody have any idea about this? Or any useful reference about regular expressions? The documentations in MSDN or other places are not sufficient at all.
Thanks in advance
|
|
|
|
|
[^/] is a set that matches any character but /.
+ is the same as {1,}, i.e. repeats one or more times.
? makes the match non-greedy, i.e. it will match as few characters as possible.
If the pattern was greedy, it would match all characters up to the next slash. That means that it would also match all of the digits in the port number except the last one, as that last digit is the minimum needed for the rest of the pattern to match.
---
single minded; short sighted; long gone;
|
|
|
|
|
string temp = "http://www.com:8080/";
string pattern = @"^(?<protocol>\w+)://[^/]+?(?<port>:\d+)?/";
Well as you said, the part [^/]+ could be greedy and consume "www.com:8080" but in the next part we have a colon that forces us to match it with the : in the string. So I think neither of question marks in [^/]+? and (?<port>:\d+)? did their missions! I mean in this case, the pattern had to split the rest of the string to two exact parts. No other permutations could be thought of. The spiltted parts are "www.com" and ":8080/". So in fact, the pattern @"^(?<protocol>\w+)://[^/]+(?<port>:\d+)/" would have a same result for the temp string, right?
|
|
|
|
|
hamidkhan wrote: but in the next part we have a colon that forces us to match it with the : in the string.
No, you don't. The colon is the part of "(?:" which starts a non-matching group.
---
single minded; short sighted; long gone;
|
|
|
|
|
I didn't get you. Would you please explain the meaning of the part below:
(?:\d+)?
What strings would this part match?
|
|
|
|
|
The pattern inside the non-matching group would match one ore more digits, and the ? quantifier is the same as {0,1} making the match optional. So, it will match zero or more digits.
The pattern \d* will do exactly the same.
---
single minded; short sighted; long gone;
|
|
|
|
|
(?:\d+)?
The last ? makes the whole group optional, but im confused with the first ? in the group. What does it mean when the question mark comes right after the ( sign?
|
|
|
|
|
Hi!
I'm using treeview to explore pc but there is a problem.
it's very difficult to analyze drives types,folder types file types etc. and set their own icons.
But some programs are using default icons. How Can I use windows default ones?
|
|
|
|
|
Search this site for Windows Explorer TreeView. A number of people have already attempted and completed what you're trying to do.
|
|
|
|
|
Hello ! I had to do a Dictionary. So i began choosing how to keep the words.
1) >>>>>>>>>>>>>>>>Data Type <<<<<<<<<<<<<<<<<<<<
The problem is that i have a lot of same words, but with different translations.
The customer wants the words to be kept as they were given me.
Sorted lists does not support the same keys.
ArrayList is the best structure to keep the words, but it is working wery long (to load about 20000 words).
2) >>>>>>>>>>>>>>>>>>>>>Keeping on disk <<<<<<<<<<<<<<
I keep the words on disk using serialization (SOAP). Was i write?
I checked, it was 5 times slower than StreamWrite/Read, but i don't have to worry about the length of my word and translation (+some comments).
Should i left how it is, or use something else (+databases)
Thanks for your attention.
One nation - underground
|
|
|
|