Cách Tạo 2 Form Trong C# / Top 15 Xem Nhiều Nhất & Mới Nhất 9/2023 # Top Trend | Rafs.edu.vn

Form Trong Lập Trình C# Winform

Dẫn nhập

Sức mạnh của hệ điều hành Window là không thể chối cãi. Và để tạo nên sức mạnh đó không thể thiếu những ứng dụng mạnh mẽ. Vậy để tạo ra những ứng dụng đó, người lập trình viên cần học cái gì?

Cùng nhau tìm hiểu serial Lập trình Winform.

Nội dung

chúng tôi

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 WindowGUI { public partial class fMain : Form { public fMain() { InitializeComponent(); } int i = 0; { i++; } } }

Form1.Designer.cs

namespace WindowGUI { partial class fMain { private System.ComponentModel.IContainer components = null; protected override void Dispose(bool disposing) { if (disposing && (components != null)) { components.Dispose(); } base.Dispose(disposing); } #region Windows Form Designer generated code private void InitializeComponent() { System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(fMain)); this.button1 = new System.Windows.Forms.Button(); this.button2 = new System.Windows.Forms.Button(); this.SuspendLayout(); chúng tôi = new System.Drawing.Font("Mistral", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); this.button1.Location = new System.Drawing.Point(436, 60); chúng tôi = "button1"; chúng tôi = new System.Drawing.Size(87, 23); this.button1.TabIndex = 0; chúng tôi = "button1"; this.button1.UseVisualStyleBackColor = true; this.button1.UseWaitCursor = true; this.button2.Location = new System.Drawing.Point(199, 59); chúng tôi = "button2"; chúng tôi = new System.Drawing.Size(75, 23); this.button2.TabIndex = 1; chúng tôi = "button2"; this.button2.UseVisualStyleBackColor = true; this.button2.UseWaitCursor = true; this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.BackColor = System.Drawing.SystemColors.Control; this.BackgroundImage = global::WindowGUI.Properties.Resources.Kteam_vector_copy_2; this.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom; this.ClientSize = new System.Drawing.Size(885, 487); this.Controls.Add(this.button2); this.Controls.Add(this.button1); this.Cursor = System.Windows.Forms.Cursors.WaitCursor; this.DoubleBuffered = true; this.ForeColor = System.Drawing.SystemColors.MenuHighlight; chúng tôi = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); chúng tôi = "fMain"; this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent; chúng tôi = "HowKteam.com"; this.TransparencyKey = System.Drawing.Color.Yellow; this.UseWaitCursor = true; this.WindowState = System.Windows.Forms.FormWindowState.Maximized; this.ResumeLayout(false); } #endregion private System.Windows.Forms.Button button1; private System.Windows.Forms.Button button2; } }

Download project

Kết luận

Bài sau chúng ta sẽ cùng tìm hiểu về Label trong lập trình C# Winform.

Nếu bạn có bất kỳ khó khăn hay thắc mắc gì về khóa học, đừng ngần ngại đặt câu hỏi trong phần bên dưới hoặc trong mục HỎI & ĐÁP trên thư viện chúng tôi để nhận được sự hỗ trợ từ cộng đồng.

Ba Cách Truyền Dữ Liệu Giữa Các Form Trong Windows Form C#

Hôm nay mình sẽ hướng dẫn cách để các bạn có thể biết cách truyền dữ liệu giữa các form trong c# .(Today i will help you to know how to passing data between forms in c#). Trong thực tế cái này cũng được sử dụng khá là nhiều trong việc liên kết giữa các form, chẳng hạn như truyền username trong form đăng nhập vào form kiểm tra chẳng hạn. Mình thiết kế 2 form như hình dưới:

Cách 1: Truyền dữ liệu qua form dùng hàm tạo hay hàm dựng (Constructor): Ta lợi dụng các class của Csharp, mọi thành phần của nó đều là class, hiển nhiên hàm tạo cũng thế. Code của form 1:

public partial class Form1 : Form { public Form1() { InitializeComponent(); } { Form2 Child = new Form2(textBox1.Text); Child.Show(); } } public partial class Form2 : Form { string strNhan; public Form2() { InitializeComponent(); } public Form2(string giatrinhan): this() { strNhan = giatrinhan; chúng tôi = strNhan; } } public partial class Form2 : Form { string strNhan; public Form2() { InitializeComponent(); } public string Message { get { return strNhan; } set { strNhan = value; } } private void Form2_Load(object sender, EventArgs e) { chúng tôi = strNhan; } } public partial class Form1 : Form { public Form1() { InitializeComponent(); } { Form2 frm = new Form2(); frm.Message = textBox1.Text; frm.Show(); } }

3. Dùng Delegate Delegate là một khái niệm khá thú vị và mạnh mẽ trong C#. Nó có rất nhiều ứng dụng và truyền dữ liệu giữa các Form là một trong những ứng dụng đó. Nếu bạn đã từng học qua C++ thì bạn sẽ thấy Delegate cũng tương tự như con trỏ hàm trong C++.

Để thực hiện, trong Form2 ta sẽ khai báo một Delegate có nhiệm vụ nhận vào một tham số và không trả về giá trị. Đồng thời tạo một hàm để lấy tham số của Delegate. Và trong Form1, ta sẽ gọi Delegate này với tham số truyền vào là một chuỗi thông điệp cần gửi. Code

public partial class Form2 : Form { public delegate void SendMessage(string Message); public SendMessage Sender; public Form2() { InitializeComponent(); Sender = new SendMessage(GetMessage); } private void GetMessage(string Message) { chúng tôi = Message; } } public partial class Form1 : Form { public Form1() { InitializeComponent(); } { Form2 frm= new Form2(); frm.Sender(textBox1.Text); frm.Show(); } }

Hiển Thị Form 2 Vào Trong Panel Của Form 1

Xin chào các bạn, bài viết hôm nay mình sẽ hướng dẫn các bạn cách hiển thị Form 2 vào trong Panel của Form 1 trong lập trình C# Winform.

[C#] Hiển thị Form 2 vào trong Panel của Form 1

Thường khi các bạn muốn hiển thị form sẽ có hai dạng:

Một là hàm show(), khi gọi hàm này chúng ta có thể thao tác qua lại giữa hai form

Hai là hàn showDialog(), hàm này thì show form hiển thị như một hộp thoại, khi nào đóng hộp thoại thì trả về kết quả và mới được thao tác ở form dưới.

Ở đây, có thuộc tính System.Windows.Forms.FormBorderStyle.None

Khi các set up thuộc tính này, thì form include trong Panel sẽ không thể di chuyển, còn ngược lại các bạn có thể di chuyển dễ dàng.

Chương trình Demo ứng dụng:

Source 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.Threading.Tasks; using System.Windows.Forms; namespace FormToPanel { public partial class Form1 : Form { public Form1() { InitializeComponent(); } { Form2 frm2 = new Form2(); frm2.TopLevel = false; panel1.Controls.Add(frm2); if (checkBox1.Checked) { frm2.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None; } chúng tôi = DockStyle.Fill; frm2.Show(); } } }

Thanks for watching!

DOWNLOAD SOURCE

Tạo Form Login Trên Môi Trường Phân Tán Bằng C#

Giả sử có 1 db QL_VATTU nằm ở sv gốc. Tên sv gốc : MUASAOBANGSV phân tán 1 : MUASAOBANGSERVER1 – chứa thông tin vật tư thuộc “CN1”SV phân tán 2 : MUASAOBANGSERVER2 – chưa thông tin vật tư thuộc “CN2”

1. Tạo link server2. Tạo login name và roles3. Tạo Form đăng nhập

Lưu ý : Mưa chỉ hướng dẫn bước 3, các bạn phải làm được 2 bước trên mới làm bước 3! 1. Tạo một project mới có tên loginProject và thiết kế giao diện như hình :

Code: using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;

namespace loginProject{ class luutru { private static string username;

public static string Username { get { return luutru.username; } set { luutru.username = value; } } private static string password;

public static string Password { get { return luutru.password; } set { luutru.password = value; } } private static string server;

public static string Server { get { return luutru.server; } set { luutru.server = value; } } private static string chinhanh;

public static string Chinhanh { get { return luutru.chinhanh; } set { luutru.chinhanh = value; } }

}} Code: using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Windows.Forms;using System.Data.SqlClient;namespace loginProject{ class ktLogin {

public static bool kiemtra(String sv, String usr, String pass, String chinhanh) { SqlConnection con; bool kt = false; String sql = @"Server=" sv ";Database=QL_VATTU;User;Password=" chinhanh";"; try {

con = new SqlConnection(sql); con.Open(); con.Close();

kt = true;

} catch (Exception) { MessageBox.Show("Username or Password is incorrect !", "Error", chúng tôi MessageBoxIcon.Error); } return kt; } }}

4.Nội dung code trong Form:

Ở cmbChiNhanh các bạn không nên đánh trực tiếp tên Chi nhánh 1, Chi nhánh 2 vào Colection.Vì trường hợp bạn thêm 1 chi nhánh trong DB thì bạn sẽ lại phải gõ trong Colection.Mưa khuyến cáo bạn nên load dữ liệu tên Chi nhánh từ DB, như vậy sẽ tối ưu hơn và đỡ tốn thời gian.

Cuối cùng , nếu bạn làm chưa được, có thể down project của Mưa về tham khảo.

Userform Vba Và 2 Cách Tạo Giao Diện Người Dùng Trong Excel

Sử dụng UserForm trong VBA sẽ giúp bạn tạo một ứng dụng đúng nghĩa. Với giao diện, các sự kiện và lệnh được liên kết với đối tượng trong UserForm VBA, bạn có thể tạo được một ứng dụng có giao diện thực hiện theo các yêu cầu được lập trình.

Trong Excel, ngoài tạo UserForm trong VBA bạn còn có thể sử dụng các công cụ vẽ (Shape), Developer để tạo Form nhập ngay trên bảng tính.

User Form trong VBA

Đây là giao diện được tạo trong VBA và bạn có thể gọi nó từ bất cứ đâu trong một Workbook.

(1): Khung tạo giao diện người dùng. Nơi bạn có thể bố trí các đối tượng tương tác, hiện thị từ hộp công cụ Toolbox (2)

(3): Thuộc tính của đối tượng. Với mỗi UserForm hay các đối tượng được tạo thì bạn có thể thay đổi các thuộc tính như Caption (văn bản hiện thị trên giao diện), Font, Name (tên của đối tượng sử dụng khi lập trình), Background…

Ví dụ sử dụng UserForm tạo giao diện nhập và kiểm tra số nhập.

Bạn có thể tạo một giao diện như sau:

If IsNumeric(txtso.Text) Then MsgBox “giá tri vua nhap la so” Else MsgBox “giá tri vua nhap khong phai la so” End If End If End Sub

Ghi chú:

btnKiemtra: Name (Properties) Command Button (Kiem tra).

txtso: TextBox (ô nhập).

IsNumeric(Expression): hàm kiểm tra số, nếu đúng kết quả trả về là True.

Kết quả: Khi chạy thì bạn sẽ có một giao diện như đã tạo. Nhập số vào TextBox và nhấn Kiem tra, bạn sẽ thực thi lệnh như đã lập trình.

Sub callUserForm() UserForm1.Show End Sub Cách ẩn UserForm Sub callUserForm() UserForm1.Hide End Sub UserForm trong bảng tính Excel

Ngoài cách tạo trong VBA, tại ngay bản tính Excel cũng có thể tạo UserForm từ các ActiveX Control. Bạn có thể sử dụng các công cụ như:

*Sự khác nhau giữa ActiveX Controls/ Form Control:

Form Control: các đối tượng này sẽ được liên kết với Macro khi bạn tạo và không cần tạo sự kiện riêng. Một số đối tượng không sử dụng được trên bảng tính.

Ví dụ tạo 1 Form để kiểm tra giá trị nhập là số.

Bạn có thể tạo một giao diện như sau:

Nền và Label (Nhập số) tạo bằng Shape.

Textbox: TextBox (ActiveX Controls).

Nút nhấn (Kiem tra): Command Button (ActiveX Controls).

If IsNumeric(txtso.Text) Then MsgBox “giá tri vua nhap la so” Else MsgBox “giá tri vua nhap khong phai la so” End If End If End Sub

*Lưu ý: Khi tạo Form trong bảng tính thì tự động VBA sẽ tạm ngưng hoạt động, bạn cần nhấn nút Play (▶) trong VBA để hoạt động.

Sau đó, bạn có thể nhập giá trị vào TextBox và khi nhấn nút Kiem tra thì kết quả sẽ hiện lên MsgBox.