在列表框中调整格式化文本大小的问题

本文关键字:问题 文本 格式化 列表 调整 | 更新日期: 2023-09-27 18:24:29

好吧,所以我有困难,我会把所有的.text输出都放进它分配给的列表框行。有没有办法让文本不超过列表框的宽度?

我就是这样得到的

private void btnCompute_Click(object sender, EventArgs e)
{
    string accessories = ""
    if (chkChildSeat.Checked) 
    {
        accessories = accessories + chkChildSeat.Text+",";
    }
    if (chkLockHelmet.Checked)
    {
        accessories = accessories + chkLockHelmet.Text+",";
    }
    if (chkTrailer.Checked) 
    {
        accessories=accessories+chkTrailer.Text;
    }
    lstInvoice.Items.Add(String.Format("{0,-49}{1,-14}", "Invoice Date", DateTime.Now.ToString("d")));
    lstInvoice.Items.Add(String.Format("{0,-50}{1,-13}", Customername, CustomerID));
    lstInvoice.Items.Add(String.Format("{0,-49}{1,-14}", "Rental Date", dateTimePicker1.Value));
    lstInvoice.Items.Add(string.Format("{0,-25}{1,-28}", "Accessories", accessories.ToString()));
    lstInvoice.Items.Add(string.Format("{0,-49}{1,-14}", "Total Invoice Amount", result.ToString("c")));
}

这将显示静态大小的文本,如日期和时间,但会剪切一些随着用户交互

在列表框中调整格式化文本大小的问题

而更改的文本

我在代码项目中看到了一个例子,其中包含了用于溢出文本的省略号。这似乎是一件对你有帮助的事情:

自动椭圆

(对TextBox类进行了扩展,以创建一个文本框控件,该控件可以缩短文本以适应其他控件)。

我认为检查这将是在ListBox 中实现它的一个良好开端