在 c# 中创建列表框作为“打开文件对话框”控件

本文关键字:文件 对话框 控件 创建 列表 | 更新日期: 2023-09-27 18:36:11

我想创建具有多个验证的自定义文件对话框。所以我选择了包含多列的列表框。我想用水平滚动条在此列表框中显示特定位置的所有文件。我面临一个问题。我想将列宽属性设置为自动,以便在文件名称较长时,列宽会自动相应增加。我没有找到任何"自动宽度"属性,所以我必须手动放置列的宽度。我被这个问题困住了。请帮助我解决此问题。

在 c# 中创建列表框作为“打开文件对话框”控件

采用此伪代码并使用列表框图形来测量字符串 (http://msdn.microsoft.com/en-us/library/6xe5hazb.aspx)

int colWidth, nextWidth;
foreach (string file in files)
{
    nextWidth = MeasureFileName(file);
    if (colWidth < nextWidth) colWidth= nextWidth;
    // Add file to list
}  
// set column width here to value in "colWidth"