|
Hi,
i hav two classes as following;
class1.cs
----------
namespace NAS
{
// fields
// properties
public class Class1
{
public Class1() {}
}
// member methods
// ...
}
class2.cs
-----------
namespace NAS
{
public class Class2
{
private Class1 class1Obj;
public void Meth()
{
class1Obj = new Class1(); // here i get an error
} // it throws TypeInitializationException
}
}
when i create an object of Class1 under Class2, i m getting
TypeInitializationException.
But i hav referred the class corretly in Reference..
Please help me..
NAS
|
|
|
|
|
If that code is exactly identical to what you are running there is no way that you would get that exception.
Im guessing there is some form of reflection and/or remoting going on somewhere!
|
|
|
|
|
Hi J4amieC,
You are right..!!
i got it.. Actually i m using Threading inside one delegate methods which causes an error.
Thanks.
|
|
|
|
|
hi,
In my form i have a buttons, textBoxes, comboBoxes, labels,....
When i click on of the buttons a listbox that was set invisible is set visible.
It shows some names. The list box is located directly at the right-bottom corner or that button.
What i want is to make the listbox invisible whenever the user clicks the mouse at any location outside the listbox
I tried using the FocusLost event of the listBox, but that didn't work perfectly.
The problem it has is that whenever i click a label or a panel or something that doesn't receive focus, ofcourse the function is not executed.
With the FocusLost i tried to implement the MouseDown event of the form. That also didn't work.
Is there any way to do that without implementing a mouse click event on every label and every panel in the form.
thanks in advance
|
|
|
|
|
private void button1_Click(object sender, EventArgs e)
{
listBox1.Visible = true;
listBox1.Focus();
}
private void listBox1_Leave(object sender, EventArgs e)
{
listBox1.Visible = false;
}
private void WindowsApplication1_Click(object sender, EventArgs e)
{
listBox1.Visible = false;
}
|
|
|
|
|
hi, thanks for you reply but i have some comments
first what is this:
bobsugar222 wrote: private void WindowsApplication1_Click(object sender, EventArgs e)
there is no events for the windows application.
and if you mean by it form1 than i tried it and it didn't work
please clarify.
thanks again
|
|
|
|
|
Sorry, I that was from an earlier test of mine... I didn't think you were able to have the same class name as the parent namespace, so I renamed Form1 to WindowsApplication1... So it was the Form.Click event, yes.
There is no reason for it not to work. If you click the form, the listBox is made invisible. I think the reason your original method didn't work was because you never explicitly set the focus to the ListBox like I did in my Button.Click event handler.
|
|
|
|
|
Assuming the regular events dont offer a solution, here are two more ideas:
- you could use MouseMove and try and detect a mouse move going to leave the listbox.
this probably would involve two borders (two to detect the direction of motion, you
must allow the mouse to enter the listbox !). You may have to allow for some mouse jitter.
And be careful with the scroll bars.
- you could use a timer that periodically checks the mouse is still inside the lisbox
(with Control.MousePosition).
Luc Pattyn
|
|
|
|
|
use form_click event to do this.. if u r using windows...
|
|
|
|
|
Hi qS,
I tried this out for ya, and could easily reproduce the problem you described. Buttons seem ok (they take care of invoking the Leave event on the ListBox), and handling the MouseDown event on the form takes care of hiding it in that instance. Panels cause a problem as they themselves capture the MouseDown event and therefore its not raised on the Form.
As an aside; I was sure there was a way to override this behaviour to tell specific controls to "pass all mouse and key events up the control heirachy. Each level should then be able to do the same thing - handle or pass the event. I cannot find this although im 90% sure it exists.
There is, like always, a sufficient workaround which is to intercept a control being added to the form and handle its MouseDown event also. You can re-use the same event handler as you used for your Form as they have the same signature (and you want the same behaviour - hide the listbox).
I added 1 button and 1 listbox to a form. I thn added the following event handlers:
private void button1_Click(object sender, System.EventArgs e)
{
this.listBox1.Visible = true;
}
private void listBox1_Leave(object sender, System.EventArgs e)
{
this.listBox1.Visible = false;
}
private void Control_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e)
{
if(sender != this.listBox1)
this.listBox1.Visible=false;
}
The last method there has a check that the mouse down event isnt actually on the listbox were using, as you need the mouse down event to set your selection. Then just override OnControlAdded:
protected override void OnControlAdded(ControlEventArgs e)
{
e.Control.MouseDown += new MouseEventHandler(Control_MouseDown);
base.OnControlAdded (e);
}
Nice!
|
|
|
|
|
Thank you for taking all the time to test my problem and figure out a solution.
Actually i did before the same solution you provided. it is working now.
thanks.
|
|
|
|
|
Hi,
Hope every one is doing fine... well I've a little problem at hand regarding the above stated function... when this function is run in the environment of winXp or lower it works fine... but on Vista it gives different results and hence the comparisons fail very often... is there any other function that could convert BYTES in to STRING in the same way on every Windows Platform i.e. compatible for Vista as well...
Thanks in advance,
Regards.
|
|
|
|
|
Can someone please tell me what is wrong with this code in C#
have 2 web pages: page A and PageB
in page_load event for pageA I want the page to assign a value into a session variable and redirects to pageB, like this:
PageA
Session["Refid"]=1;
Respone.Redirect("pageb?refid="+ Session["Refid"]);
.
When I step run my codebehind by pressing F10, I notice it goes to the catch Exception part of my try...catch event and still redirects to pageB which shoudn't be. I believe once an error is raised it should print the error message instead of redirecting to pageB.
can someone help me out.
Thanks
|
|
|
|
|
What is the exception ?
Christian Graus - C++ MVP
'Why don't we jump on a fad that hasn't already been widely discredited ?' - Dilbert
|
|
|
|
|
it doesn't print out any exception instead. I just taught something is wrong bcos when I comment that part and step run my codes it runs (without going to the next page) and does not go the catch exception segement.
when you remove the comment and step run the program again, when it gets to the response.redirect, it jumps straight to the catch exception segment after which it redirects to pageB.
if you can give me an example that works I don't mind.
thanks for taking out time to look at my issues.
expect to get more clues from you.
thanks.
|
|
|
|
|
Thread abort like...........
Parwej Back...............DON of Developer.......
Parwej Ahamad
g_parwez@rediffmail.com
|
|
|
|
|
Plz use this........
Response.Redirect(url, False)
Parwej Back...............DON of Developer.......
Parwej Ahamad
g_parwez@rediffmail.com
|
|
|
|
|
hi acodman,
I think that response.redirect work even for most exceptions.
try putting the aspx page extention and convert the session to string
Respone.Redirect("pageb.aspx?refid="+ Session["Refid"].ToString() );
i think this should work
|
|
|
|
|
always cast ur data before u use it..
Ajay has send the right thing..
Respone.Redirect("pageb.aspx?refid="+ Session["Refid"].ToString() );
|
|
|
|
|
|
|
I have to encrypt and decrypt the date and one value.
How can i do so that it will saved in the database in non regular format.
and also I want to create public and private key so that at the time of installation of software only private key which i have can be used.
unless I don't provide key software cannot installed.
Please help me out.
|
|
|
|
|
The System.Security.Cryptography namespace should be a good starting point. There, you'll find implementations of common symmetric encryption algorithms as well as the RSA asymmetric algorithm.
|
|
|
|
|
i want to convert interger value to character
that interger value contain ascii value.
e.g 65 to A
Hallo
|
|
|
|
|
Char c= Convert.ToChar(65) ;
Char c=(char)65;
both are same
Parwej Back...............DON of Developer.......
Parwej Ahamad
g_parwez@rediffmail.com
|
|
|
|