Tôi đang tìm một cách để định dạng DataGridViewTextBoxColumn để giá trị được databinded được định dạng trong databinding. Ví dụ tôi có một tài sản CompanyName và tôi cần phải có 5 chữ cái đầu tiên từ CompanyName khi databinding xảy ra.Làm thế nào để dữ liệu định dạng tùy chỉnh trong datagridview trong databinding
Tôi có thể móc vào các sự kiện DataGridView khác nhau (ví dụ: RowsAdded) và lặp qua tất cả các hàng và thực hiện thủ thuật, nhưng tôi muốn tìm cách tinh vi hơn để thực hiện việc này. Kể từ khi tôi đã quyết định sử dụng databinding, looping thông qua dữ liệu và sửa đổi nó là một chút chống lại các khái niệm databinding.
Những gì tôi sau đó, là làm thế nào để làm điều tương tự như dưới đây, nhưng thêm logic tùy chỉnh định dạng:
dataGridView1.Columns[colSomeDate.Index].DataPropertyName = "SomeDate";
colSomeDate.DefaultCellStyle.Format = "yyyy";
Tôi nghĩ rằng tôi nên thực hiện IFormatProvider, nhưng tôi không hoàn toàn hiểu làm thế nào tôi nên thực hiện nó.
dataGridView1.Columns[companyName.Index].DataPropertyName = "CompanyName";
companyName.DefaultCellStyle.FormatProvider = new ShortText(); // ShortText should implement IFormatProvider
Vâng, vâng, nhưng nếu bạn có một vài khác nhau quan điểm với một datalayouts khác nhau sau đó bạn phải thực hiện định dạng này cho mỗi mục đích khác nhau (có nghĩa là bạn đang có một số tài sản). Tôi muốn tiếp tục định dạng từ thực thể kinh doanh thực tế. – Clack