我正在C#上编写一个WPF应用程序,该应用程序中有一个ListBox。该列表框具有以下格式在每行一个项目:WPF中的C#字符串填充
ID Name Price
我知道ID具有最大3个数字,最低之一,名称为少于25个字符,所以我要对齐这3个数值列,这样的事情:
194 Item Name 1 24.99
1 Item Other Name 4.00
13 Item Item Item 32.22
等等...... 我试过几件事情:
string.Format("{0} {1} {2:0.00}", id.ToString().PadRight(4), name.PadRight(25), price)
我尝试另一种选择:
string.Format("{0, -4} {1, -25} {2:0.00}", id, name, price)
不幸的是,每次获得3个数字的ID时,它都会将文本向右推进一点,所以列未对齐。任何提示或想法如何解决?
你为什么不使用DataGrid? – Alberto
您应该在项目类中公开属性'ID','Name'和'Price',然后将您的ListBox绑定到这些项目的集合并使用适当的数据模板进行显示。请参阅MSDN上的[数据模板概述](http://msdn.microsoft.com/zh-cn/library/ms742521(v = vs.110).aspx)文章。 – Clemens