- [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 định dạng màu chữ, màu nền, font chữ trực tiếp trên gridview
Bài viết hôm nay, mình sẽ hướng dẫn các bạn cách định dạng màu nền, màu chữ, font size trên Gridview Devexpress trực tiếp thông qua popup menu của Devexpress.
Như các bạn thường dùng trong GridView thường có những cột quan trọng:
Ví dụ: như cột thành tiền thì chúng ta cần làm nỗi bật column này lên, bằng cách tô màu hoặc đổi màu chữ, font size, để cho người dùng dễ nhìn.
Giao diện demo ứng dụng C# Devexpress:
Source code:
using DevExpress.Utils;
using DevExpress.Utils.Menu;
using DevExpress.XtraEditors;
using DevExpress.XtraEditors.ColorPick.Picker;
using DevExpress.XtraEditors.Repository;
using DevExpress.XtraGrid.Columns;
using DevExpress.XtraGrid.Menu;
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 WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
// This line of code is generated by Data Source Configuration Wizard
customersTableAdapter1.Fill(northwndDataSet1.Customers);
}
private void Form1_Load(object sender, EventArgs e)
{
}
public Image createImage(Color color)
{
Bitmap flag = new Bitmap(16, 16);
Graphics flagGraphics = Graphics.FromImage(flag);
Pen blackPen = new Pen(Color.Black, 2);
Rectangle rect = new Rectangle(0, 0, 16, 16);
flagGraphics.DrawRectangle(blackPen, rect);
flagGraphics.FillRectangle(new SolidBrush(color), 1, 1, 14, 14);
return flag;
}
//Create a menu item
DXMenuCheckItem CreateCheckItem(string caption, GridColumn column, FixedStyle style, Color color)
{
Image image = createImage(color);
DXMenuCheckItem item = new DXMenuCheckItem(caption, column.Fixed == style, image, new EventHandler(OnFixedClick));
item.Tag = new MenuInfo(column, style);
return item;
}
//Menu item click handler
void OnFixedClick(object sender, EventArgs e)
{
DXMenuItem item = sender as DXMenuItem;
MenuInfo info = item.Tag as MenuInfo;
if (info == null) return;
if (item.Caption.Substring(0, 3) == "Col")
{
if (item.Caption == "Color Customize...")
{
ColorPickEdit colorPickerEdit = new ColorPickEdit();
FrmColorPicker frm = new FrmColorPicker(colorPickerEdit.Properties);
frm.StartPosition = FormStartPosition.CenterScreen;
frm.TopMost = true;
if (frm.ShowDialog(colorPickerEdit.FindForm()) == System.Windows.Forms.DialogResult.OK)
{
info.Column.AppearanceCell.BackColor = frm.SelectedColor;
}
}
else
{
info.Column.AppearanceCell.BackColor = ((Bitmap)item.Image).GetPixel(5, 5);
}
}
else if (item.Caption.Substring(0, 3) == "Fon")
{
FontDialog fontDialog = new FontDialog();
fontDialog.ShowDialog();
info.Column.AppearanceCell.Font = fontDialog.Font;
}
else
{
if (item.Caption == "Chọn màu...")
{
ColorPickEdit colorPickerEdit = new ColorPickEdit();
FrmColorPicker frm = new FrmColorPicker(colorPickerEdit.Properties);
frm.StartPosition = FormStartPosition.CenterScreen;
frm.TopMost = true;
if (frm.ShowDialog(colorPickerEdit.FindForm()) == System.Windows.Forms.DialogResult.OK)
{
info.Column.AppearanceCell.ForeColor = frm.SelectedColor;
}
}
else
{
info.Column.AppearanceCell.ForeColor = ((Bitmap)item.Image).GetPixel(5, 5);
}
}
}
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
gridView1.SaveLayoutToXml("data.xml", OptionsLayoutBase.FullLayout);
}
private void gridView1_PopupMenuShowing(object sender, DevExpress.XtraGrid.Views.Grid.PopupMenuShowingEventArgs e)
{
if (e.MenuType == DevExpress.XtraGrid.Views.Grid.GridMenuType.Column)
{
GridViewColumnMenu menu = e.Menu as GridViewColumnMenu;
//menu.Items.Clear();
if (menu.Column != null)
{
// font chữ
DXMenuCheckItem font = new DXMenuCheckItem("Font chữ", true, null, new EventHandler(OnFixedClick));
font.Tag = new MenuInfo(menu.Column, FixedStyle.None);
menu.Items.Add(font);
// Màu nền
DXSubMenuItem sItem = new DXSubMenuItem("Màu nền");
Color mauhong = ColorTranslator.FromHtml("#FFC2BE");
Color mauxanh = ColorTranslator.FromHtml("#A8D5FF");
Color xanhduong = ColorTranslator.FromHtml("#C1F49C");
Color mauvang = ColorTranslator.FromHtml("#FEF7A5");
Color mautim = ColorTranslator.FromHtml("#E0CFE9");
Color xanhlam = ColorTranslator.FromHtml("#8DE9DF");
Color mautrang = ColorTranslator.FromHtml("#FFFFFF");
Color mauden = ColorTranslator.FromHtml("#000000");
sItem.Items.Add(CreateCheckItem("Color White", menu.Column, FixedStyle.None, mautrang));
sItem.Items.Add(CreateCheckItem("Color Black", menu.Column, FixedStyle.None, mauden));
sItem.Items.Add(CreateCheckItem("Color Pink", menu.Column, FixedStyle.None, mauhong));
sItem.Items.Add(CreateCheckItem("Color Blue", menu.Column, FixedStyle.None, mauxanh));
sItem.Items.Add(CreateCheckItem("Color Green", menu.Column, FixedStyle.None, xanhduong));
sItem.Items.Add(CreateCheckItem("Color Yellow", menu.Column, FixedStyle.None, mauvang));
sItem.Items.Add(CreateCheckItem("Color Purple", menu.Column, FixedStyle.None, mautim));
sItem.Items.Add(CreateCheckItem("Color Cyan", menu.Column, FixedStyle.None, xanhlam));
sItem.Items.Add(CreateCheckItem("Color Customize...", menu.Column, FixedStyle.None, Color.Transparent));
menu.Items.Add(sItem);
// màu chữ
DXSubMenuItem mauchu = new DXSubMenuItem("Màu chữ");
Color red = ColorTranslator.FromHtml("#F44336");
Color pink = ColorTranslator.FromHtml("#E91E63");
Color purple = ColorTranslator.FromHtml("#9C27B0");
Color DeepPurple = ColorTranslator.FromHtml("#673AB7");
Color Indigo = ColorTranslator.FromHtml("#E0CFE9");
Color blue = ColorTranslator.FromHtml("#3F51B5");
Color cyan = ColorTranslator.FromHtml("#00BCD4");
Color Teal = ColorTranslator.FromHtml("#009688");
Color green = ColorTranslator.FromHtml("#4CAF50");
Color Lime = ColorTranslator.FromHtml("#CDDC39");
Color Amber = ColorTranslator.FromHtml("#FFC107");
Color Orange = ColorTranslator.FromHtml("#FF9800");
Color depOrange = ColorTranslator.FromHtml("#FF5722");
Color brown = ColorTranslator.FromHtml("#795548");
Color grey = ColorTranslator.FromHtml("#9E9E9E");
Color BlueGrey = ColorTranslator.FromHtml("#607D8B");
Color Black = ColorTranslator.FromHtml("#000000");
Color White = ColorTranslator.FromHtml("#FFFFFF");
mauchu.Items.Add(CreateCheckItem("Black", menu.Column, FixedStyle.None, Black));
mauchu.Items.Add(CreateCheckItem("White", menu.Column, FixedStyle.None, White));
mauchu.Items.Add(CreateCheckItem("Red", menu.Column, FixedStyle.None, red));
mauchu.Items.Add(CreateCheckItem("Pink", menu.Column, FixedStyle.None, pink));
mauchu.Items.Add(CreateCheckItem("Purple", menu.Column, FixedStyle.None, purple));
mauchu.Items.Add(CreateCheckItem("Deep Purple", menu.Column, FixedStyle.None, DeepPurple));
mauchu.Items.Add(CreateCheckItem("Indigo", menu.Column, FixedStyle.None, Indigo));
mauchu.Items.Add(CreateCheckItem("Blue", menu.Column, FixedStyle.None, blue));
mauchu.Items.Add(CreateCheckItem("Cyan", menu.Column, FixedStyle.None, cyan));
mauchu.Items.Add(CreateCheckItem("Teal", menu.Column, FixedStyle.None, Teal));
mauchu.Items.Add(CreateCheckItem("Green", menu.Column, FixedStyle.None, green));
mauchu.Items.Add(CreateCheckItem("Lime", menu.Column, FixedStyle.None, Lime));
mauchu.Items.Add(CreateCheckItem("Amber", menu.Column, FixedStyle.None, Amber));
mauchu.Items.Add(CreateCheckItem("Orange", menu.Column, FixedStyle.None, Orange));
mauchu.Items.Add(CreateCheckItem("Deep Orange", menu.Column, FixedStyle.None, depOrange));
mauchu.Items.Add(CreateCheckItem("Brown", menu.Column, FixedStyle.None, brown));
mauchu.Items.Add(CreateCheckItem("Grey", menu.Column, FixedStyle.None, grey));
mauchu.Items.Add(CreateCheckItem("Blue Grey", menu.Column, FixedStyle.None, BlueGrey));
mauchu.Items.Add(CreateCheckItem("Chọn màu...", menu.Column, FixedStyle.None, Color.Transparent));
menu.Items.Add(mauchu);
}
}
}
}
}
class MenuInfo
{
public MenuInfo(GridColumn column, FixedStyle style)
{
this.Column = column;
this.Style = style;
}
public FixedStyle Style;
public GridColumn Column;
}
HAVE FUN :)