|
I came across of this few times too.
Best thing I could come up with was to inherit:
class A
{
protected int x;
}
class ToolsForA : A
{
public int DoSomethingWithX(A a)
{
... can access a's protected members here...
}
}
|
|
|
|
|
The only way of doing something similar to C++ friend classes is by isolating your classes in an assembly (e.g., a DLL), and use them as 'internal', which makes a member public only to an assembly.
Yes, even I am blogging now!
|
|
|
|
|
I think it's internal .
/\ |_ E X E GG
|
|
|
|
|
Does anyone know how to display printer properties dialog?
It's the one that show when you click "Properties" from PrintDialog next to
dropdown with printer names.
I have printer name and need to display it's properties dialog without
showing PrintDialog or PageSetupDialog
|
|
|
|
|
i have a lines of code just like the following and i whould like to jump after checking a specified condition and incressing the i ... somthing like that ...
<br />
for(int i=0;i<=10;i++)<br />
{<br />
if(ok)<br />
<br />
<br />
}<br />
how can i do something like that...
ADEL K Khalil
|
|
|
|
|
I think you want the continue keyword.
Michael
CP Blog [^]
|
|
|
|
|
|
Hi!
I've got a problem and would be thankful for some help!
I can't open more than approximately 200-300 files.
When I have chosen the files and pressed OK this row throws a System.InvalidOperationException.
if( _openFileDialog.ShowDialog() == DialogResult.OK )
{
...
Does anyone know what I'm doing wrong?
Thanks!
Erik
|
|
|
|
|
hi,
Tell me how you select more than a file using OpenFileDialog class. Is it possible to show me that code. I need to know how did you code that.
**************************
S r e e j i t h N a i r
**************************
|
|
|
|
|
You can do this by simply setting the Multiselect property of your OpenFileDialog instance to true .
- Nick Parker My Blog | My Articles
|
|
|
|
|
Hi!
Sure, here's the code:
_openFileDialog.Multiselect = true;
if( _openFileDialog.ShowDialog() == DialogResult.OK )
{
string[] keys = _openFileDialog.FileNames;
...
/Erik
|
|
|
|
|
Don't read much .NET class documentation, do you? Set the Multiselect property of the OpenFileDialog object to true before you call ShowDialog .
RageInTheMachine9532
"...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome
|
|
|
|
|
Hi,
You wrote >> Don't read much .NET class documentation, do you?
What you mean by this ?
**************************
S r e e j i t h N a i r
**************************
|
|
|
|
|
It took me all of 5 seconds to find this answer ... it was pathetically easy to find! Doing research to solve your own problems is a very important skill that you MUST have in this business in order to survive, advance your career, and most importantly, LEARN!
The only reason you didn't find this one was because you didn't even try and find it in the docs for the OpenFileDialog class. Please don't tell me this was your "level best" attempt at solving your own problem.
RageInTheMachine9532
"...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome
|
|
|
|
|
hi,
I won't say it's my level best. But you need to know one painful reality that i am not the founder of any language which we are dealing here(eg. C#).
It may very easy for you. But don't think it is easy for others. This point doesn't mean that you are altimate for all. You can ask yourself that how much you know and how much you need to know.
I politly ask that submitter to show the code.Now i know it is a matter of property.
And next thing is how much i want to cover to fix a problem is purly depend upon me and the depth of a problem.
I never feel hesitation to ask any doubts which is unknown for me.
I don't know what's wrong with you if i ask some code to that queary submitter.
So my word to you is , Dear friend You can critisize me. Provided it must be technical not other.
See for past couple of day's i am trying to figureout one problem. Is it possible for you to help out ? .
**************************
S r e e j i t h N a i r
**************************
|
|
|
|
|
I haven't found the exact number that is allowed however your best bet right now would be to wrap the call in a try catch block, it is throwing a InvalidOperationException exception.
DialogResult dr;
try
{
dr = open.ShowDialog();
if(dr == DialogResult.OK)
{
string[] files = open.FileNames;
if(files != null)
{
foreach(string file in files)
{
box.Items.Add(file);
}
}
}
}
catch(InvalidOperationException ex)
{
MessageBox.Show(ex.ToString());
}
- Nick Parker My Blog | My Articles
|
|
|
|
|
Hi!
Thanks for the answer!
I've allread done the try, catch thing.
The problem is that i want my program to be able to open more than 200-300(or whatever it is) files.
Is it not possible to open that many files in another way?
Erik
|
|
|
|
|
A quick search on MSDN found this[^] KB artcile on the problem. Believe it or not, this behavior is by design! You can't select more than 200 filenames using the OpenFileDialog class. You would have to write your own dialog to get around this "feature".
RageInTheMachine9532
"...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome
|
|
|
|
|
OK, thanks for the help!!
Erik
|
|
|
|
|
|
Sorry, but your link doesn't go anywhere...
RageInTheMachine9532
"...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome
|
|
|
|
|
I've written my own control in which I use three enumerations to set friendly values to Desgin-time properties.
public enum CornerStyles
{
Rounded,
Square
}
public enum Orientations
{
Vertical,
Horizontal
}
public enum Poles
{
Left,
Right,
Top,
Bottom
}
[Description( "Set the shape of the control's corners")]
[Category( "ColorTrackBar" )]
public CornerStyles ControlCornerStyle
{
set
{
this.cornerStyle=value;
this.Invalidate();
}
get{return this.cornerStyle;}
}
[Description( "Set whether the bar will be Veirtically or Horizontally oriented")]
[Category( "ColorTrackBar" )]
[RefreshProperties(RefreshProperties.All)]
public Orientations BarOrientation
{
set
{
this.barOrientation = value;
if(value==Orientations.Vertical)
this.MaximumValueSide=Poles.Bottom;
if(value==Orientations.Horizontal)
this.MaximumValueSide=Poles.Right;
base.Size=new Size(25,25);
trackRect=Rectangle.Empty;
this.Invalidate();
}
get{return this.barOrientation;}
}
[Description( "Select the side of the control to represent the maximum range value")]
[Category( "ColorTrackBar" )]
[RefreshProperties(RefreshProperties.All)]
public Poles MaximumValueSide
{
get
{
return maxSide;
}
set
{
switch(barOrientation)
{
case Orientations.Horizontal:
if(value==Poles.Top || value==Poles.Bottom)
{
throw new ArgumentException ("Since your Orientation is set to Horizontal, you can only select"+
" Left or Right for this property");
}
break;
case Orientations.Vertical:
if(value==Poles.Left || value==Poles.Right)
{
throw new ArgumentException ("Since your Orientation is set to Vertical, you can only select"+
" Top or Bottom for this property");
}
break;
}
maxSide=value;
trackRect=Rectangle.Empty;
this.Invalidate();
}
}
When I add this control to a windows form and build it I get no build errors if VS.NET currently has a .CS file open.
But when I'm looking at the form designer window and build it I get three errors in the TaskList window of VS.NET
:
The variable 'CornerStyles' is either undeclared or was never assigned.
The variable 'Orientations' is either undeclared or was never assigned.
The variable 'Poles' is either undeclared or was never assigned.
The odd thing is that these errors only occur when I have the Designer window open, so I think it might have something to do with how I'm exposing/using the enums ? Anyone have any Ideas ?
|
|
|
|
|
Hi all,
I'm writing some c# code to output some data in a format that a Fortran program can use. Yep, that's right, I did say Fortran
What I need is to write a floating point number into a string that is always 7 characters long, with a space prefixed before the number. For example:
1.34567
1234.67
.234567
I figured that this would be a simple job with String.Format(), like so:
double dNumber;
String.Format(" {0,7:g}", dNumber );
however, the output of this is something like:
91.3481478886182
141.785454332755
it seems that the alignment part of the format string is being ignored.
Can anyone tell me what I'm missing here?
Cheers,
Pete
|
|
|
|
|
hi,
if you don't mind please give little bit specific.
**************************
S r e e j i t h N a i r
**************************
|
|
|
|
|
Umm, I'm not sure how much more specific I can be, but I'll try
Ok, I have a variable of type double, let's call it dNumber.
I want to create a string that represents that number. Let's call the string strFormatted.
The string must be formatted as follows:
the 1st character is a space
the next 7 characters represent the number
the string must always be 8 characters in length
here's some examples of correctly formatted strings.
12345678 <- characters in string
--------
1.34567
1234.67
0.23456
I figured the following function would do the trick:
string FormatToFortran( double dNumber )
{
return String.Format( " {0,7:g}", dNumber );
}
but unfortunately it doesn't. Format() seems to be ignoring the alignment section of the format string (the 7), and strings returned by FormatToFortran() are similar to the following:
130.312393712128
136.399493519436
121.295216530426
obviously, these aren't 8 characters in length.
So, I'm wondering what is wrong with my format string.
Hope that clarifies things. If not, feel free to ask away!
Cheers,
Pete
|
|
|
|