[C#] Hướng dẫn sử dụng Richtextbox Autocomplete Intellisense giống tag friends của facebook
Bài viết hôm nay, mình sẽ hướng dẫn các bạn cách sử dụng RichTextBox Autocomplete Intellisense giống cách Tag Friends của Facebook trong lập trình C#. Ví dụ: Các bạn muốn tạo một ứng dụng sử dụng richtextbox , khi gõ dấu @ thì sẽ hiển thị tất cả các ...
Bài viết hôm nay, mình sẽ hướng dẫn các bạn cách sử dụng RichTextBox Autocomplete Intellisense giống cách Tag Friends của Facebook trong lập trình C#.
Ví dụ: Các bạn muốn tạo một ứng dụng sử dụng richtextbox, khi gõ dấu @ thì sẽ hiển thị tất cả các email trong danh sách của bạn giúp bạn có thể chọn dễ dàng.
Dưới đây là demo ứng dụng RichTextBox Autocomplete C#:
- Trong bài viết này mình sử dụng thư viện AutocompleteMenu.dll, các bạn có thể download source của mình bên dưới để lấy thư viện về sử dụng.
hoặc các bạn có thể download trực tiếp từ thư viện Nuget về sử dụng nhé:
PM> Install-Package AutocompleteMenu -Version 1.3.5
Source code C#:
using AutocompleteMenuNS; 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 RichtextBox_Autocomplete { public partial class Form1 : Form { public Form1() { InitializeComponent(); autocompleteMenu1.AddItem(new EmailSnippet("nguyenthao_it@hotmail.com.vn")); autocompleteMenu1.AddItem(new EmailSnippet("hoangtunho2015@gmail.com")); autocompleteMenu1.AddItem(new EmailSnippet("vimotnguoiradi@yahoo.com")); autocompleteMenu1.AddItem(new EmailSnippet("quaconme@gmail.com")); autocompleteMenu1.AddItem(new EmailSnippet("tinhnhatphai@gmail.com")); autocompleteMenu1.AddItem(new EmailSnippet("duongqua@gmail.com")); autocompleteMenu1.AddItem(new EmailSnippet("tieulongnu@gmail.com")); autocompleteMenu1.AddItem(new EmailSnippet("hongthatcong@gmail.com")); } internal class EmailSnippet : AutocompleteItem { public EmailSnippet(string email) : base(email) { ImageIndex = 0; ToolTipTitle = "Insert email:"; ToolTipText = email; } public override CompareResult Compare(string fragmentText) { if (fragmentText == Text) return CompareResult.VisibleAndSelected; if (fragmentText.Contains("@")) return CompareResult.Visible; return CompareResult.Hidden; } } } }
Have Fun :)
Nhớ Like and share nhé các bạn :)
DOWNLOAD SOURCE