|
|
|
ถามเรื่อง statusstrip properties text ไม่เปลี่ยนตรงที่ตั้งไว้ |
|
|
|
|
|
|
|
ตามหัวข้อเลยครับพอกดปุ่ม start แล้ว toolStripStatusLabel1.text ไม่ยอมเปลี่ยน
Code (C#)
private void btnStart_Click(object sender, EventArgs e)
{
Cursor.Current = Cursors.WaitCursor;
btnStart.Enabled = false;
btnClose.Enabled = false;
toolStripStatusLabel1.Text = "Please wait...";
try
{
if (Listfolder.Items.Count != 0)
{
foreach (string Dir in Listfolder.Items)
{
string newSource;
string newDest;
newSource = string.Concat(txtSource.Text, "\\", Dir);
newDest = string.Concat(txtDest.Text, "\\", Dir);
if (!Directory.Exists(newSource))
{
MessageBox.Show("No folder " + newSource + " in the source!", "Message", MessageBoxButtons.OK, MessageBoxIcon.Error);
//continue;
}
else
{
ClassCopy HasListBoxCopy = new ClassCopy();
HasListBoxCopy.CopyFolder(newSource, newDest);
}
}
Cursor.Current = Cursors.Default;
btnStart.Enabled = true;
btnClose.Enabled = true;
toolStripStatusLabel1.Text = "Ready";
MessageBox.Show("Copy files complete!", "Message", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
else
{
ClassCopy NotHasListBoxCopy = new ClassCopy();
NotHasListBoxCopy.CopyFolder(txtSource.Text, txtDest.Text);
Cursor.Current = Cursors.Default;
btnStart.Enabled = true;
btnClose.Enabled = true;
toolStripStatusLabel1.Text = "Ready";
MessageBox.Show("Copy files complete!", "Message", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
แต่ผมตั้งไว้หน้าฟอร์มโหลดกลับเปลี่ยนแต่ตอนกดปุ่ม start ไม่เปลี่ยน
รบกวนด้วยครับ
ขอบคุณครับ
Tag : .NET, VS 2010 (.NET 4.x)
|
|
|
|
|
|
Date :
2011-03-25 11:26:54 |
By :
GhostLocal |
View :
2050 |
Reply :
7 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ดูก็ไม่น่ามีอะไรนะ
ลองทำ breakpoint รึยังขอรับ ว่ามันวิ่งเข้า btnStart_Click รึเปล่า
ปกติ VB จะมี handler ต่อท้ายด้วย
private sub btnStart_Click(object sender, EventArgs e) Handler btnStart.Click
แล้ว C# ปกติมีไหมครับ
|
|
|
|
|
Date :
2011-03-25 18:53:09 |
By :
watcharop |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เหอๆ หนูก็ไม่ค่อยรู้เรื่อง statusstrip properties text เท่าไรนะคะ
แต่ว่า ก็แนะนำให้ลอง Debug แล้วก็ดูว่ามันรันไปตามขั้นตอนที่เราตั้งไว้หรือเปล่าค่ะ
แล้วก็ที่ปุ่ม Start ในหน้า .aspx ได้ใส่ ฟังก์ชั่น OnClick="btnStart_Click" ไว้หรือเปล่าค่ะ
ลองเช็คดูนะคะ อาจจะลืม (เราก็เคยลืม อิอิ)
แล้วก็ตอบพี่หางอึ่ง ใน C# เป็นแบบที่ คุณ จขกท. เขียนอ่ะค่ะ
ไม่มี handler ต่อท้ายค่ะ แหะๆ
|
|
|
|
|
Date :
2011-03-25 19:24:31 |
By :
roongine |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (C#)
private void btnStart_Click(object sender, EventArgs e)
{
Cursor.Current = Cursors.WaitCursor;
btnStart.Enabled = false;
btnClose.Enabled = false;
toolStripStatusLabel1.Text = "Please wait...";
try
{
if (Listfolder.Items.Count != 0)
{
foreach (string Dir in Listfolder.Items)
{
string newSource;
string newDest;
newSource = string.Concat(txtSource.Text, "\\", Dir);
newDest = string.Concat(txtDest.Text, "\\", Dir);
if (!Directory.Exists(newSource))
{
MessageBox.Show("No folder " + newSource + " in the source!", "Message", MessageBoxButtons.OK, MessageBoxIcon.Error);
//continue;
}
else
{
ClassCopy HasListBoxCopy = new ClassCopy();
HasListBoxCopy.CopyFolder(newSource, newDest);
}
}
Cursor.Current = Cursors.Default;
btnStart.Enabled = true;
btnClose.Enabled = true;
toolStripStatusLabel1.Text = "Ready";
MessageBox.Show("Copy files complete!", "Message", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
else
{
ClassCopy NotHasListBoxCopy = new ClassCopy();
NotHasListBoxCopy.CopyFolder(txtSource.Text, txtDest.Text);
Cursor.Current = Cursors.Default;
btnStart.Enabled = true;
btnClose.Enabled = true;
toolStripStatusLabel1.Text = "Ready";
MessageBox.Show("Copy files complete!", "Message", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
ผมลอง Debug ตามที่พี่ๆบอกแล้วครับได้ผลดังนี้
รูปนี้พอรันผ่านคำสั่งที่มีปัญหา
รบกวนด้วยน่ะครับ
|
|
|
|
|
Date :
2011-03-29 13:29:50 |
By :
GhostLocal |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
คุณหมายถึงว่า ที่ Status มันไม่ขึ้นคำว่า "Please wait..." ใช่ไหม
ขึ้นแต่ "Ready"
ลองใส่ Application.DoEvents() ดู เผื่อจะช่วยได้
Code (C#)
toolStripStatusLabel1.Text = "Please wait...";
Application.DoEvents();
|
|
|
|
|
Date :
2011-03-29 13:57:36 |
By :
watcharop |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ได้แล้วครับ แล้วApplication.DoEvents(); มันทำงานยังไงอ่ะครับ รบกวนอธิบายด้วยครับ
|
|
|
|
|
Date :
2011-03-30 10:52:59 |
By :
GhostLocal |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ไม่รู้เหมือนกันครับ
บังเอิญผมเคยเจอปัญหาลักษณะเดียวกับคุณนี้แหละ
|
|
|
|
|
Date :
2011-03-30 11:14:25 |
By :
watcharop |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 00
|