c# - 使用按钮初始化 ObjectListView
问题描述
我有一个包含三列的 ObjectListView。第一个显示文件的名称,另外两个必须具有允许执行下载和删除操作的按钮。
但是,为了初始化 ObjectListView,我首先调用一个方法,该方法返回带有文件名的字符串列表。
如何让这些文件的名称加载到 ObjectListView 的第一列中,并附带其他两列中的按钮?
谢谢。
解决方案
如何让这些文件的名称加载到 ObjectListVie 的第一列
您可以使用AddObjects
将对象列表添加到 ObjectListView。您可以使用OlvColumn.AspectName
来确定显示的内容,例如“ToString”。您可能想要创建一个类,而不是仅仅插入字符串。
olvColumn1.AspectName = "ToString";
olv.AddObjects(new []
{
@"c:\temp\1.txt",
@"c:\temp\2.txt",
@"c:\temp\3.txt"
});
伴随着其他两列中的按钮?
您可以在列中创建按钮,如下所示:
olvColumn2.IsButton = true;
olvColumn2.ButtonSizing = BrightIdeasSoftware.OLVColumn.ButtonSizingMode.CellBounds;
olvColumn2.AspectGetter =(s)=>"Kill";
olv.ButtonClick += (s, e) =>
{
if(e.Column == olvColumn2)
try
{
if(File.Exists((string)e.Model))
File.Delete((string)e.Model);
else
MessageBox.Show("File not found");
}
catch(Exception ex)
{
MessageBox.Show(ex.Message);
}
};
推荐阅读
- php - 访问google pay api for pass时如何解决身份验证错误?
- intellij-idea - 无法加载主类/可运行 jar JavafX 8 项目
- javascript - Dynamic Less Variables 重置 scss 样式
- powershell - 如何向用户查询 AD 帐户名称,然后使用以下 PS 脚本中的输入?
- python - 使用 str.contains 按正则表达式模式上的列名过滤 Pandas 数据框
- vb.net - VB.Net 5.0 核心控制台应用程序 - System.Configuration(和 My.Settings)不可用
- typescript - 包装通用 TypeScript 函数以传递空值
- python - 向每个服务器的系统通道发送消息
- json - 用 FutureBuilder 过滤 ListView?
- angular - Angular 网站适用于 Chrome,而不是 Firefox 或 Safari