HOME > .NET Framework > Forum > อยากให้ Window Form C# ไป เรียกใช้งานอีก Class แล้วให้มา Update GUI Label ที่ Form เดิม แต่ไม่มันได้รบกวนช่วยดูด้วยครับ
อยากให้ Window Form C# ไป เรียกใช้งานอีก Class แล้วให้มา Update GUI Label ที่ Form เดิม แต่ไม่มันได้รบกวนช่วยดูด้วยครับ
using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;
namespace Update_GUI
{
static class Program
{
/// <summary>
/// The main entry point for the application.
/// </summary>
///
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}
}
}
// new Form 1 ที่ show นะครับ
Code (C#)
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace Update_GUI
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void btn_Click(object sender, EventArgs e)
{
Class_two c_two = new Class_two();
c_two.update_ui();
}
}
}
// Form แรก
Code (C#)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace Update_GUI
{
class Class_two
{
public void update_ui() {
Form1 f = new Form1();
f.label1.Text = "อยากให้เปลี่ยนครับ";
MessageBox.Show("5");
}
}
}
// class 2 ที่ Form แรก เรียกใช้งานอยากให้มัน Update Lable ที่ Form 1 ครับ รบกวนด้วยครับ
form1 มัน show อยู่แล้ว คุณต้องส่ง object form1 ลงไปใน class2 ไม่ใช่ไป new ใหม่ข้างในนั้น
เพราะมันจะเป็นการสร้าง object form1 มาอีกตัวแต่ยังไม่แสดงผล Code (C#)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace Update_GUI
{
class Class_two
{
public property form1 myform { get;set; }
public void two () {}
public void two( form1 passform)
{
this.myform = passform ;
}
public void update_ui()
{
if(myform != null)
{
myform.label1.Text = "ก็เปลี่ยนสิครับ";
MessageBox.Show("5");
}
}
}
}
เรียกใช้ Code (C#)
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace Update_GUI
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void btn_Click(object sender, EventArgs e)
{
//แบบยาว
two foo = new two(this);
foo.update_ui() ;
//แบบสั้น
(new two(this)).update_ui() ;
}
}
}
Date :
2015-02-15 09:42:16
By :
DOG{B}
No. 4
Guest
เอ้าเพี้ยนละ ภาษาปนกัน ขออำภัยๆ Code (C#)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace Update_GUI
{
class Class_two
{
public form1 myform { get;set; } // แก้ตรงนี้นิสครับ
public void two () {}
public void two( form1 passform)
{
this.myform = passform ;
}
public void update_ui()
{
if(myform != null)
{
myform.label1.Text = "ก็เปลี่ยนสิครับ";
MessageBox.Show("5");
}
}
}
}