|
Try this. Instead of wrapping your Application.Run in a try..catch, write a new exception handler. (If I recall correctly, you wanted the application to end after an exception? That is the reason for the Application.Exit() . If you don't want this, go ahead and remove it.) Good luck.
static void Main() <br />
{<br />
Application.ThreadException += new ThreadExceptionEventHandler( MyExceptionHandler);<br />
Application.Run(new Form1());<br />
}<br />
<br />
private static void MyExceptionHandler(object sender, System.Threading.ThreadExceptionEventArgs e )<br />
{ <br />
MessageBox.Show(e.Exception.Message); <br />
Application.Exit();<br />
}
Roy.
|
|
|
|
|
Thank you. That worked perfectly. It's always the feature I never knew existed that are the biggest problem. :-/
|
|
|
|
|
actually it turns out I still do need the try/catch block. Application.ThreadException doesn't catch anything generated from a static class that initializes while the form constructor is running.
|
|
|
|
|
when I create a string array, it returns an error if I don't initialize the array to something.
ex) string[] strArray = new string()// string() method doesn't take in 0 parameters.
To create an empty string array that grow in size dynamically, what should I do?
|
|
|
|
|
You could always use ArrayList instead and cast it to string afterwards, or use the .ToString() method.
//create the list
ArrayList myStrList = new ArrayList();
//add a string object
myStrList.Add(strObj);
//use the stringobject
foreach(object obj in myStrList)
Console.WriteLine(obj.ToString());
-Larantz-
|
|
|
|
|
but I have to use ListBox.items.addrange(object[])
The parameter object[] doesn't take in ArrayList. that is why I had to create string[] instead of ArrayList.
Is there any easy way to convert ArrayList into string[] or any object[]?
|
|
|
|
|
Sure,
Try this
private void foo(object[] arr)
{
}
private void bar()
{
ArrayList list = new ArrayList();
foo(list.ToArray());
}
Dave Jellison
Application Software Developer
|
|
|
|
|
You could even pass along the myList.ToArray() directly into
your ComboBox.Items.AddRange(object []) method.
But to ensure that none of the objects added to the combobox from the arraylist is null, you can scan through them while adding.
ArrayList myList = new ArrayList();
//**
//some code here that adds your strings to the arraylist
//**
foreach(object obj in myList)
if(obj != null)
myComboBox.Items.Add(obj);
-Larantz-
|
|
|
|
|
Arrays don't grow dynamically. You have to use a list for that.
List<string> strList = new List<string>();
---
b { font-weight: normal; }
-- modified at 6:45 Monday 1st May, 2006
|
|
|
|
|
Array does not grow dynamically, but ArrayList does.
The List <T> you are talking about is a "Generics" version of replacement for ArrayList in .NET 2.0.
-- modified at 7:56 Monday 1st May, 2006
|
|
|
|
|
Yes, I know.
---
b { font-weight: normal; }
|
|
|
|
|
hello all,
I have one activex player.I am downloading its dll using <object>tag in axpx.
But do i find programatically Whether the dll is downloaded or not?
please help me
puja
-- modified at 6:19 Monday 1st May, 2006
|
|
|
|
|
I have written an application has a main window, I want my window doesn't lose the keyboard focus,even
if I running another program (i.e: lose focus for short time only).
|
|
|
|
|
You could use a Timer [^] to make your main window the active window, although I dare say this might annoy your users. I recommend considering an alternative GUI before deciding to do this.
/ravi
My new year's resolution: 2048 x 1536
Home | Music | Articles | Freeware | Trips
ravib(at)ravib(dot)com
|
|
|
|
|
Hello
I'm working on C# project in RTL mode from 6 months ago.
I designed project for 1024*768 mode and now if user change the resolution, controls seems terrible. I know that i can use Dock properties! but it's late.
Now i want to control Monitor Resolution when project works.
Please help me to identify and change resolution.
|
|
|
|
|
I woul duninstall a application that would change my monitor resolution (except for games offcourse).
Just don't do that.
Revise your GUI!
--------------------------------------------------------
My portfolio & development blog
Q:What does the derived class in C# tell to it's parent?
A:All your base are belong to us!
|
|
|
|
|
CWIZO wrote: I woul duninstall a application that would change my monitor resolution (except for games offcourse).
And even then the game has to be able to detect an alt-tab and restore the system defaults. The 1.0 release of civ3 didn't do that. Drove me crazy.
|
|
|
|
|
|
Hi,
I am designing a data bound user control and i want to to know what other data interfaces that i will need to support in my control regarding the data-binding, apart from the ones i have listed below:
I currently have my design to support data sources implementing these interfaces:
IList
IListSource
IBindingList
Are there any others i need to support too?
-- modified at 5:11 Monday 1st May, 2006
|
|
|
|
|
Hi all
i have a simple c# web application. when i press the go button, i call a function that handles the main functionality of the page. i would like this function to be called also when the user presses enter on the edit box. i have found quite a lot of code on how to call Client Side functions by adding an attribute to different components, but i haven't found anything on how to call a server side function like mine.
any ideas anyone?
Thanks
il-gg
|
|
|
|
|
You will need AJAX. Take a look at ATLAS (atlas.asp.net)
--------------------------------------------------------
My portfolio & development blog
Q:What does the derived class in C# tell to it's parent?
A:All your base are belong to us!
|
|
|
|
|
I have a problem.
On my form (mainform) is use a panal wich should load another form (form1)
now i placed the panal en he should load the form1 when the mainform loads.
but i get this error:
Top-level control cannot be added to a control.
i don't know what to do whit this error.
public partial class main : Form<br />
{<br />
Form1 from1;<br />
public main()<br />
{<br />
InitializeComponent();<br />
}<br />
<br />
internal Form1 From1<br />
{<br />
get<br />
{<br />
if (this.from1 == null)<br />
<br />
{<br />
this.from1 = new Form1();<br />
<br />
this.panel1.Controls.Add(this.from1); <br />
this.from1.Dock = DockStyle.Fill;<br />
}<br />
<br />
return this.from1;<br />
}<br />
}<br />
<br />
private void main_Load(System.Object sender, System.EventArgs e)<br />
{<br />
this.FFrom1();<br />
}<br />
<br />
<br />
internal void FFrom1()<br />
{<br />
this.From1.Visible = true;<br />
}<br />
this is my code
i use visual C# 2005
and offcourse writing in C#
can anyone help me?
|
|
|
|
|
Set the TopLevel property of your Form to false prior to adding it.
|
|
|
|
|
thanks for your fast reply
where acactly should i'de be doing that.
on the Mainform (the form with the panal) or Form1 (the form that's load)
toplevel = false; or something like that was the code but where should i put this.
before the panal loads
or somewhere else?
|
|
|
|
|
In the getter of Form1 right before adding it to the Panel:
internal Form1 From1
{
get
{
if (this.from1 == null)
{
this.from1 = new Form1();
this.from1.TopLevel = false;
this.panel1.Controls.Add(this.from1);
this.from1.Dock = DockStyle.Fill;
}
return this.from1;
}
}
|
|
|
|