Objectlistview 工具提示字符串填充

Objectlistview tooltip string padding

我想要我的 olv 在用户悬停一行时显示工具提示,我想将输出字符串格式化为 table。

这是我的代码:

args.Title = "Danh sách sản phẩm";
HoaDon hoadon = args.Model as HoaDon;
args.StandardIcon = ToolTipControl.StandardIcons.Info;
StringBuilder str = new StringBuilder();
foreach (var chitiet in hoadon.DSChiTietHD)
{
     str.AppendLine();
     str.Append(chitiet.SanPham.MaSP.ToString().PadRight(10));
     str.Append(chitiet.SanPham.TenSP.PadRight(50));
     str.Append(chitiet.SoLuong.ToString().PadRight(10));
}
args.Text = str.ToString();

但这是结果:

我不知道第二列发生了什么。请帮忙!

可能是因为您没有使用 Mono-Space 字体。 "space" 字符比 "u" 字符小得多。自然地,padding 只考虑字符数,而不考虑宽度。例如,将字体更改为 "Courier",这应该可以解决问题。