How to Get value from another Form in C#
By FoxLearn 11/3/2024 2:31:30 PM 9.1K
To get a value from another form in a C# Windows Forms application, you typically use properties or methods in the target form to expose the data you need.
Open your Visual Studio, then click New Project, then select Visual C# on the left, then Windows and then select Windows Forms Application. Name your project "GetValueFromAnotherForm" and then click OK
Design your form as shown below.
Form1
This form will contain Add and Edit buttons to open the second form (frmAddEditStudent) and retrieve a value from it.
frmAddEditStudent
Create a student class to map data
public class Student { public string ID { get; set; } public string FullName { get; set; } }
Add code to handle your form as shown below.
Form1
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace GetValueFromAnotherForm { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void btnAdd_Click(object sender, EventArgs e) { //Add a student to binding source using(frmAddEditStudent frm = new frmAddEditStudent() { StudentInfo = new Student() }) { if (frm.ShowDialog() == DialogResult.OK) studentBindingSource.Add(frm.StudentInfo); } } private void btnEdit_Click(object sender, EventArgs e) { Student obj = studentBindingSource.Current as Student; if(obj != null) { using(frmAddEditStudent frm = new frmAddEditStudent() { StudentInfo = obj }) { if(frm.ShowDialog() == DialogResult.OK) { studentBindingSource.EndEdit(); btnEdit.Focus(); } } } } } }
frmAddEditStudent
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace GetValueFromAnotherForm { public partial class frmAddEditStudent : Form { public Student StudentInfo { get; set; } public frmAddEditStudent() { InitializeComponent(); } private void frmAddEditStudent_Load(object sender, EventArgs e) { //Init data if (StudentInfo != null) { txtStudentID.Text = StudentInfo.ID; txtFullName.Text = StudentInfo.FullName; } } private void btnOK_Click(object sender, EventArgs e) { StudentInfo.ID = txtStudentID.Text; StudentInfo.FullName = txtFullName.Text; } } }
By using properties and the modal dialog pattern, you can easily pass values between forms in a C# Windows Forms application.
VIDEO TUTORIAL
- How to update UI from another thread in C#
- How to get CheckedListBox selected values in C#
- How to use Advanced Filter DataGridView in C#
- How to create a Notification Popup in C#
- How to Use Form Load and Button click Event in C#
- How to Link Chart /Graph with Database in C#
- How to Check SQL Server Connection in C#
- How to Generate Serial Key in C#
Categories
Popular Posts
How to disable Windows Defender SmartScreen
12/24/2024
11 Things You Didn't Know About Cloudflare
12/19/2024