|
An array is an array, it isn't special just because it holds Bitmaps.
I suggest you get your C# book and study it (again).
|
|
|
|
|
Luc Pattyn wrote: study it (again)
What makes you think they studied it the first time
I know the language. I've read a book. - _Madmatt
|
|
|
|
|
Nothing really. That is exactly why I've used parentheses.
Now if I had be sure, I could have left out again entirely.
|
|
|
|
|
I am using this code on combo value change but it's not saving to the XML when the user navigates quickly..
xml_document.SelectSingleNode("/Resume/Detail/ReferencesTitle").InnerText = (string)cboTitle.EditValue;
xml_document.Save(public_var.file_name);
is there any way to lock the application until the above process is completed?
modified on Tuesday, March 23, 2010 9:57 AM
|
|
|
|
|
You don't want to lock the application but rather synchronize access to the resource. You can use many synchronization objects for this, like a Monitor or Mutex.
I know the language. I've read a book. - _Madmatt
|
|
|
|
|
any example or resource for such case (writing to xml)? thx
|
|
|
|
|
We're not here to spoon feed you! You have enough information to do your own research.
I know the language. I've read a book. - _Madmatt
|
|
|
|
|
How can I call
private void btnSave_Click(object sender, EventArgs e)
from
private void txtName_KeyDown(object sender, KeyEventArgs e)
something like:
private void txtName_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter)
{
RUN btnSave_Click
}
}
|
|
|
|
|
Call the PerformClick method on the button:
btnSave.PerformClick();
Kristian Sixhoej
"Invisible women out to kill ya - Oh, great!"
|
|
|
|
|
The easiest thing to do is take the code out of btnSave_Click and put it in a separate method. Give it an informative name.
Then call that method from the btnSave_Click and txtName_KeyDown handlers.
|
|
|
|
|
Not quite. See the previous reply.
|
|
|
|
|
OK, it's not easier, but I hate having code in event handlers.
Put the code in a separate method and call the method.
|
|
|
|
|
As KeyEventArgs derives from EventArgs you can pass an instance of it to the click handler if you like so you can do:
if (e.KeyCode == Keys.Enter)
btnSave_Click(sender, e); This will just run the code in the click handler. If you actually want to simulate a click then you should call PerformClick();
if (e.KeyCode == Keys.Enter)
btnSave.PerformClick(); The effect may be the same but it is possible that other things can happen in the control's internal code before the handler so base your decision on whether this could potentialy cause an issue (this could happen in a later version of the control and possibly break your application).
If the code that is being run due to the the Enter key press and button click is not directly related to the click then you should move it out to a separate method, and call your new method in each handler.
private void txtName_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter)
DoMyStuff();
}
private void btnSave_Click(object sender, EventArgs e)
{
DoMyStuff();
}
private void DoMyStuff()
{
}
Dave
Binging is like googling, it just feels dirtier. (Pete O'Hanlon)
BTW, in software, hope and pray is not a viable strategy. (Luc Pattyn) Why are you using VB6? Do you hate yourself? (Christian Graus)
modified on Monday, March 22, 2010 6:42 PM
|
|
|
|
|
This doesn't really answer your question, but from the example code you gave, you could accomplish the same thing by going to the form's properties and setting "AcceptButton" to "btnSave". Then, when you press ENTER, btnSave_Click will be called automatically.
|
|
|
|
|
Except that the keydown event appears to be on a textbox not the form itself.
I know the language. I've read a book. - _Madmatt
|
|
|
|
|
I am using this code to display MDI Child:
frmWorkExperience WorkExperienceForm = new frmWorkExperience();
WorkExperienceForm.Tag = "WORK_EXPERIENCE";
WorkExperienceForm.MdiParent = this;
WorkExperienceForm.Dock = DockStyle.Fill;
WorkExperienceForm.Show();
butit's flickering while loading! is there any way to keep it hidden until it's fully loaded?
|
|
|
|
|
Enabling double buffering might solve the issue.
Have a look at this article on double buffering:
Don't Flicker! Double Buffer![^]
Kristian Sixhoej
"Invisible women out to kill ya - Oh, great!"
|
|
|
|
|
Ive got a simple browser automation project
navigate to the image host
fill in a urlbox
hit the add button
wait for the page to reload
hit submit
The problem is when the page refreshes my code seems to stall, I know the navigated event could be used but that would unnecessarily complicate the code. Can anyone suggest a fix
if (CurrentThread.ReadyState == WebBrowserReadyState.Complete)
{
CurrentThread.DocumentCompleted -= new System.Windows.Forms.WebBrowserDocumentCompletedEventHandler(this.ThreadCallback);
}
HtmlElementCollection Buttons = CurrentThread.Document.GetElementsByTagName("input");
foreach (HtmlElement Button in Buttons)
{
if (Button.GetAttribute("type").ToString() == "submit" && (Button.GetAttribute("name").ToString() == "AddList"))
{
DateTime InitalTime = DateTime.Now;
System.TimeSpan TimeDelay = new System.TimeSpan(0, 0, 0, 0, 10000);
System.DateTime TimeOut = InitalTime.Add(TimeDelay);
while (TimeOut > DateTime.Now)
{
Button.InvokeMember("click");
try
{
while (CurrentThread.IsBusy != true)
{
Application.DoEvents();
}
while (CurrentThread.IsBusy == true)
{
Application.DoEvents();
}
}
catch
{
MessageBox.Show("error");
}
}
}
}
HtmlElementCollection PostButtons = CurrentThread.Document.GetElementsByTagName("input");
foreach (HtmlElement Button in PostButtons)
{
MessageBox.Show(Button.GetAttribute("name").ToString());
if (Button.GetAttribute("type").ToString() == "submit" && (Button.GetAttribute("name").ToString() == "post"))
{
Button.InvokeMember("click");
}
}
|
|
|
|
|
I want record sound from speakers.I use managed directx.
|
|
|
|
|
You cannot record soud from speakers as they are an output device.
You can however record from the windows audio mixer output before it reaches the speakers which is what I think you want.
Dave
Binging is like googling, it just feels dirtier. (Pete O'Hanlon)
BTW, in software, hope and pray is not a viable strategy. (Luc Pattyn) Why are you using VB6? Do you hate yourself? (Christian Graus)
|
|
|
|
|
I have a simple question, but i don't know how to do it.
I have a collection of data, and would like to query it using LINQ. Then, i want to modify the resultant collection, which updates the original collection
For example
i have the following collection
int[] data = { 0, 1, 2, 3, 4, 5 };
I want to select all data larger than 3 (thus 4 and 5), and then modify them by multiplying them with 10.
My final collection should look like this. (This is a simple example, in reality, i will be using a complex object)
data = {0, 1, 2, 3, 40 , 50};
I tried this; but doesn't update the original collection. Does ToList() return a copy of the collection?
How do i go about doing this?
int[] data = { 0, 1, 2, 3, 4, 5 };
var a = from n in data
where n > 3
select n;
List<int> b = a.ToList();
for (int i = 0; i < b.Count(); i++)
{
b[i] = 10*b[i];
Console.WriteLine(b[i]);
}
for (int i = 0; i < data.Count(); i++)
Console.WriteLine(data[i]);
Data still contains 0,1,2,3,4,5 instead of 0,1,2,3,40,50,which is what i want.
Please help, many thanks.
|
|
|
|
|
LINQ is not designed for that sort of thing. LINQ is designed to be "functional" in that it aims to provide methods that do not affect the state from which they are queried.
You will need to do a for loop yourself to do this.
|
|
|
|
|
On top of what Gideon said, you don't have any code that modified the array at all. You mode changes to your "b" list (which is a seperate object from the "data" array), but then you displayed the original data list.
Oh, and BTW. Array's in .NET are immutable. You cannot change the size of an array once it's created.
Your LINQ query returned a List object containing 2 integers, 4 and 5. It does NOT return the source array you are querying. Then you multiplied the two integers in that List by 10 and over-wrote the values in the List with the new values. You didn't touch the original Array of numbers at all, but then you displayed them.
|
|
|
|
|
Thanks, now i understand.
|
|
|
|
|
I need an open source C# program that can receive SMTP messages (sends "250 OK" etc.) and save them in MailMessage (and sends messages, but this is optional since I found a lot of those..)
What protocol does it use? POP3 or SMTP?
thanks in advance
|
|
|
|