- [SQLSERVER] Loại bỏ Restricted User trên database MSSQL
- [C#] Hướng dẫn tạo mã QRcode Style trên winform
- [C#] Hướng dẫn sử dụng temp mail service api trên winform
- [C#] Hướng dẫn tạo mã thanh toán VietQR Pay không sử dụng API trên winform
- [C#] Hướng Dẫn Tạo Windows Service Đơn Giản Bằng Topshelf
- [C#] Chia sẻ source code đọc dữ liệu từ Google Sheet trên winform
- [C#] Chia sẻ source code tạo mã QR MOMO đa năng Winform
- [C#] Chia sẻ source code phần mềm lên lịch tự động chạy ứng dụng Scheduler Task Winform
- [Phần mềm] Tải và cài đặt phần mềm Sublime Text 4180 full version
- [C#] Hướng dẫn download file từ Minio Server Winform
- [C#] Hướng dẫn đăng nhập zalo login sử dụng API v4 trên winform
- [SOFTWARE] Phần mềm gởi tin nhắn Zalo Marketing Pro giá rẻ mềm nhất thị trường
- [C#] Việt hóa Text Button trên MessageBox Dialog Winform
- [DEVEXPRESS] Chia sẻ code các tạo report in nhiều hóa đơn trên XtraReport C#
- [POWER AUTOMATE] Hướng dẫn gởi tin nhắn zalo từ file Excel - No code
- [C#] Chia sẻ code lock và unlock user trong domain Window
- [DEVEXPRESS] Vẽ Biểu Đồ Stock Chứng Khoán - Công Cụ Thiết Yếu Cho Nhà Đầu Tư trên Winform
- [C#] Hướng dẫn bảo mật ứng dụng 2FA (Multi-factor Authentication) trên Winform
- [C#] Hướng dẫn convert HTML code sang PDF File trên NetCore 7 Winform
- [C#] Hướng dẫn viết ứng dụng chat với Gemini AI Google Winform
[DEVEXPRESS] Hướng dẫn sử dụng thư viện NHunspell để kiểm tra chính tả tiếng việt trong TextBox Winform
Xin chào các bạn, bài viết hôm nay mình sẽ tiếp tục hướng dẫn các bạn cách kiểm tra lỗi chính tả tiếng việt khi nhập liệu trong lập trình C#.
[DEVEXPRESS] Spelling Checker Word in C# Winform
Trong hai bài viết trước, mình đã có hướng dẫn các bạn cách tách chữ tiếng việt ra khỏi hình ảnh, khi các bạn biết thư viện ocr chỉ giúp các bạn chính xác khoảng 85 - 90%.
Nghĩa là nó có thể sai lệch về độ chính xác, vì vậy chúng ta cần phải kiểm tra lỗi chính tả cú pháp của ngôn ngữ.
Nếu đoạn văn ít thì không sao, nhưng nếu đoạn văn dài thì bài viết này sẽ giúp ích cho người dùng kiểm tra lỗi chính tả một cách dễ dàng nhất.
Trong Devexpress đã cung cấp cho chúng ta một component SpellChecker, mình sẽ sử dụng công cụ này và bộ từ điển kiếm tra tiếng việt của NHunspell
, và trong bài demo này mình sẽ hướng dẫn các bạn kiểm tra qua công cụ là MemoEdit trong Devexpress.
Hình ảnh demo ứng dụng kiếm tra chính tả tiếng việt (Spelling checker C#):
Đầu tiên, các bạn cần download bộ từ điển từ project của mình và copy vào solution như hình bên dưới, nhớ chọn thuộc tính là copy always nhé bạn.
- Tiếp theo, mình sẽ cấu hình thuộc tính cho control SpellCheker c# như hình bên dưới đây
Bây giờ chúng ta sẽ code spelling checker cho C#:
public Form1()
{
InitializeComponent();
memoEdit1.Text = "Chieu buồn nghieng nắng biên va891ng mênh mông lan thag mình ta. kchie62u ";
AppearanceObject.DefaultMenuFont = new Font("Tahoma", 10, FontStyle.Bold);
AppearanceObject.ControlAppearance.ForeColor = Color.Red;
}
private void Form1_Load(object sender, EventArgs e)
{
spellChecker.SpellCheckMode = SpellCheckMode.AsYouType;
spellChecker.Check(memoEdit1);
}
private void btn_kiemtra_Click(object sender, EventArgs e)
{
spellChecker.Check(memoEdit1);
}
Và dưới đây là câu lệnh bỏ các menu: copy, paste, cut, selectall khi chúng ta right-click để spelling check chính tả, nếu bạn nào không cần bỏ thì không thêm đoạn code này.
private void memoEdit1_Properties_BeforeShowMenu(object sender, BeforeShowMenuEventArgs e)
{
foreach (DXMenuItem item in e.Menu.Items)
{
if (item.Tag != null && (item.Tag.Equals(StringId.TextEditMenuCopy)
|| item.Tag.Equals(StringId.TextEditMenuPaste) || item.Tag.Equals(StringId.TextEditMenuCut) || item.Tag.Equals(StringId.TextEditMenuSelectAll) || item.Tag.Equals(StringId.TextEditMenuDelete) || item.Tag.Equals(StringId.TextEditMenuUndo)))
{
item.Visible = false;
}
}
}
Thanks for watching!