Monthly Archives: April 2013

Chuyển đổi dữ liệu từ form con về form cha

I. Thông tin chung:

Có những lúc chúng ta cần chuyển đổi dữ liệu từ form con về lại form cha để có thể cập nhật lại dữ liệu của form cha.

Đây là cách thức để làm việc với nó.

II. Cách sử dụng:

1. Lập chương trình:

– Tạo một chương trình mới có 1 form cha LKMainForm và một form con LKDanhMuc

2. Thêm vào form chính (Parent Form):

Form chính gồm có 1 textbox để nhận dữ liệu truyền lại từ form con và một nút (button) dùng để tạo form con trong chương trình.

public partial class LKMainForm : Form
{
public String myMessage;
public LKMainForm()
{
InitializeComponent();
}

private void btnOpenList_Click(object sender, EventArgs e)
{
LKDanhMuc formDanhMuc = new LKDanhMuc(this);
formDanhMuc.Show();
}

internal void capNhatDuLieu()
{
txtNotice.Text = myMessage;
}
}

3. Thêm vào form con (Child Form):

– Form phụ gồm có một textbox để nhập dữ liệu từ người dùng và một button dùng để trả dữ liệu ngược về form cha.

– Thêm vào phần cấu trúc (Structure) dành cho form.

public LKDanhMuc(LKMainForm formIn)

– Đây là nguyên mã nguồn của form con (Form Danh mục)

public partial class LKDanhMuc : Form
{
LKMainForm formOut;
public LKDanhMuc(LKMainForm formIn)
{
InitializeComponent();
formOut = formIn;
}

private void SendBack_Click(object sender, EventArgs e)
{
formOut.myMessage = textBox1.Text;
formOut.capNhatDuLieu();
this.Close();
}
}

* Link Video trên Youtube: http://www.youtube.com/watch?v=Tu07ubhxyfY

Source Code:

* Google Drive: https://docs.google.com/file/d/0B3v7a0gMgVkBVGEtdVpaUmgyZjQ/edit?usp=sharing

* Mediafire: http://www.mediafire.com/?4if7pp96147m7bo

Sử dụng Inherited Form trong Visual Studio 2010

I. Thông tin chung:

Hiện nay hầu hết mọi người đều biết lập trình hướng đối tượng nhưng áp dụng vào form hầu hết đều chỉ dùng các Object (đối tượng) để lưu thông tin và lấy giá trị chứ chưa sử dụng tính kế thừa trong form. Sau đây là cách tái sử dụng form nhiều lần bằng cách sử dụng kế thừa (inherited) trong lập trình hướng đối tượng đối với form.

II. Cách sử dụng:

1. Tạo một Project mới:

– Ta tạo một project mới với tên là LKTutorialStandardForm để thực hành chuyện này.

2. Tạo một form chuẩn mới để kế thừa:

LKStandardForm

Tạo form chuẩn là một Window Form

– Ta tạo một form chuẩn để những form khác kế thừa. Form chuẩn này cần có đủ tất cả những thứ mà các form khác luôn luôn có. Như vậy chúng ta sẽ không cần phải làm một công việc nhiều lần nữa.

InheritedForm

Đây là form chuẩn LapKanStandard

– Ở đây, tôi tạo form chuẩn LKStandardForm với một button About Us và sẽ hiển thị một MessageBox để chúng ta biết button đã hoạt động.

3. Sau đó chúng ta tạo một form con kế thừa form chuẩn:

SpecialForm

Chọn vào Inherited Form để tạo form kế thừa

– Form này là SpecialistForm sẽ kế thừa form chuẩn. Form này có đầy đủ tất cả những gì mà chúng ta có từ form chuẩn, một button About Us và các nhãn (Label).

ChooseForm

Chọn Form kế thừa từ bảng thông báo mới hiện ra

– Tuy chúng ta thấy có biểu tượng khóa nằm góc bên trái của mỗi control. Đó là vì khi Visual Studio hỗ trợ chúng ta tạo giao diện nó để thuộc tính mặc định là private. Điều đó làm cho các form con không được chỉnh sửa gì những control đó.

ChangeProperty

Đây là thuộc tính được sinh tự động bởi IDE

AfterChange

Đây là cách Controller sau khi chuyển thuộc tính

– Muốn có thể tùy chỉnh các control ở các form con, chúng ta cần chỉnh sửa lại thuộc tính của các control từ private sang protected để các form con có thể truy cập được vào những control trong form cha và thay đổi cũng như làm những thứ mà chúng ta cần

* Source Code dành cho những ai cần:

+ Drive: https://docs.google.com/file/d/0B3v7a0gMgVkBTDFCSmMxbVBJUGM/edit?usp=sharing

+ Mediafire: http://www.mediafire.com/?as42podrumcd69m

New view in the new world

Product: LapKan Company Product (LK)

Coder: Huygamer

Blog: huygamer.wordpress.com

Lỗi khi lên phiên bản mới nhất của Xcode 4.6.2

From XCode 4.6.2 Release Notes

Known Issues

Building

When building a product previously built with Xcode 4.6.1 or earlier, the build fails with an error similar to this one:

PCH file built from a different branch ((clang-425.0.27)) than the compiler ((clang-425.0.28))

To address this issue, choose Product > Clean before building your product. 13663167

Performing Product > Clean works

Sau khi update lên phiên bản Xcode 4.6.1 lên phiên bản 4.6.2 thương bị lỗi PCH file, bạn chỉ cần vào Product => sau đó nhấn Clean rồi Build lại sẽ không sao. Phím tắt là command+shift+k sau đó run lại Project là okie.

S2BWv