C# 列表框中的格式问题

C# 列表框中的格式问题,c#,winforms,listbox,C#,Winforms,Listbox,我想在我的列表框中显示这种格式: “文件名大小” 我该怎么做才能使其全部在右侧对齐?使用列表视图控件,该控件允许列和许多其他功能 首先添加控件,然后选择它并转到控件的属性,并将视图更改为详细信息。这将允许您查看具有可调整大小的列名的列表 接下来,创建两列(一列表示文件名,另一列表示文件大小)或您的案例中的任何内容。要执行此操作,请在“属性”窗口上转到“列”并单击它,以获得允许您添加列的对话框窗口 最后,这里是一些关于如何使用ListView的示例代码 private void Form1_Lo

我想在我的
列表框中显示这种格式:

“文件名大小”


我该怎么做才能使其全部在右侧对齐?

使用
列表视图
控件,该控件允许列和许多其他功能

首先添加控件,然后选择它并转到控件的属性,并将视图更改为详细信息。这将允许您查看具有可调整大小的列名的列表

接下来,创建两列(一列表示文件名,另一列表示文件大小)或您的案例中的任何内容。要执行此操作,请在“属性”窗口上转到“列”并单击它,以获得允许您添加列的对话框窗口

最后,这里是一些关于如何使用
ListView
的示例代码

private void Form1_Load(object sender, EventArgs e)
{
    var fileListForExample = Directory.GetFiles(@"C:\");
    foreach (var item in fileListForExample)
    {
        FileInfo fileInfo = new FileInfo(item);
        var lstItem = new ListViewItem(Path.GetFileName(item));
        lstItem.SubItems.Add(fileInfo.Length.ToString());

        var itemAdded = listView1.Items.Add(lstItem);
    }
}



您可以在列表框中手动绘制项目。
例如:


使用
列表视图
。如果不是,则使用固定宽度字体。
private void Form1_Load(object sender, EventArgs e)
{
    var fileListForExample = Directory.GetFiles(@"C:\");
    foreach (var item in fileListForExample)
    {
        FileInfo fileInfo = new FileInfo(item);
        var lstItem = new ListViewItem(Path.GetFileName(item));
        lstItem.SubItems.Add(fileInfo.Length.ToString());

        var itemAdded = listView1.Items.Add(lstItem);
    }
}
public Form1()
{
    //InitializeComponent();
    this.Width = 500;

    var listBox = new ListBox { Parent = this, Width = 400, Height = 250 };
    listBox.DrawMode = DrawMode.OwnerDrawFixed;

    var files = new DirectoryInfo(".").GetFiles();
    listBox.DataSource = files;

    listBox.DrawItem += (o, e) =>
    {
        e.Graphics.DrawString(files[e.Index].Name, listBox.Font, Brushes.Black, e.Bounds);

        var length = files[e.Index].Length.ToString();
        var size = e.Graphics.MeasureString(length, listBox.Font);

        e.Graphics.DrawString(length, listBox.Font,
            Brushes.Black, e.Bounds.Width - size.Width, e.Bounds.Y);
    };
}