ListViewItem.ListViewSubItem 类
ListViewItem.UseItemStyleForSubItems 属性
ListView.AutoResizeColumn 方法public Form1()
{
InitializeComponent();
this.listView1.Columns.Add("Name", 80, HorizontalAlignment.Right);
this.listView1.Columns.Add("Date", 40/*-2自动列宽*/, HorizontalAlignment.Center);
ListViewItem itemMe = new ListViewItem();
listView1.Items.Add(itemMe).Text="First"; // 设置UseItemStyleForSubItems属性为false改变SubItems的样式
itemMe.UseItemStyleForSubItems = false;
// Add the expense subitem.
ListViewItem.ListViewSubItem expenseItem = itemMe.SubItems.Add("Expense");
//我如何设置Expense这个item的宽度呢? 没找到是ListView的属性还是ListViewItem的属性?
// Change the expenseItem object's color and font.
expenseItem.ForeColor = System.Drawing.Color.Red;
expenseItem.Font = new System.Drawing.Font(
"Arial", 12, System.Drawing.FontStyle.Italic);
this.listView1.View = System.Windows.Forms.View.Details;
//设置ListView根据列表头自动调整宽度
//this.listView1.AutoResizeColumn(0,
// ColumnHeaderAutoResizeStyle.HeaderSize);
//设置ListView根据列内容自动调整宽度
this.listView1.AutoResizeColumn(1,
ColumnHeaderAutoResizeStyle.ColumnContent);
}
ListViewItem.UseItemStyleForSubItems 属性
ListView.AutoResizeColumn 方法public Form1()
{
InitializeComponent();
this.listView1.Columns.Add("Name", 80, HorizontalAlignment.Right);
this.listView1.Columns.Add("Date", 40/*-2自动列宽*/, HorizontalAlignment.Center);
ListViewItem itemMe = new ListViewItem();
listView1.Items.Add(itemMe).Text="First"; // 设置UseItemStyleForSubItems属性为false改变SubItems的样式
itemMe.UseItemStyleForSubItems = false;
// Add the expense subitem.
ListViewItem.ListViewSubItem expenseItem = itemMe.SubItems.Add("Expense");
//我如何设置Expense这个item的宽度呢? 没找到是ListView的属性还是ListViewItem的属性?
// Change the expenseItem object's color and font.
expenseItem.ForeColor = System.Drawing.Color.Red;
expenseItem.Font = new System.Drawing.Font(
"Arial", 12, System.Drawing.FontStyle.Italic);
this.listView1.View = System.Windows.Forms.View.Details;
//设置ListView根据列表头自动调整宽度
//this.listView1.AutoResizeColumn(0,
// ColumnHeaderAutoResizeStyle.HeaderSize);
//设置ListView根据列内容自动调整宽度
this.listView1.AutoResizeColumn(1,
ColumnHeaderAutoResizeStyle.ColumnContent);
}
解决方案 »
- 高手来解决问题?问: System.IO.DirectoryNotFoundException: 未能找到路径“D:\”的一部分。
- Crystal Report不分群组可以Show图表吗?
- 关于texturebrush的问题
- 1006-11-20 这个日期是错误的! asp里用IsDate判断 在C#里用什么
- 怎样在datagrid中增加一条纪录,并保存到数据库呀?
- 获取远程图片
- .net的GDI+有没有锁结色?
- 怎样用C#删除上传到服务器的文件?谢谢
- 资源查找!
- 怎样获得应用程序事例句柄和应用程序的窗口句柄?
- 关于Queue.Enqueue的疑问
- random报错:当前上下文不存在名称“random”
ListView.AutoResizeColumn 方法
我照着你的说法改了,但是看起来没有起到什么作用,现在的代码是: public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
listView1.Columns.Add("First");
listView1.Columns.Add("Second");
var item = new ListViewItem();
listView1.Items.Add(item).Text = "expense";
item.UseItemStyleForSubItems = false;
var sub = item.SubItems.Add("subbbbbbbbbbb");
sub.ForeColor = Color.Red;
sub.Font = new Font("Arial", 12, FontStyle.Italic);
listView1.AutoResizeColumn(1, ColumnHeaderAutoResizeStyle.ColumnContent);
listView1.View = View.Details;
}
}
但是现实出来的效果是列的宽度没有被自动调整,字符串被截断了,如下图:
var header2 = listView1.Columns.Add("Second");
header1.Width = 200;但是这不是我期望的效果。
我希望达到的效果是根据列内容的长度来自动调整列宽,所以我想用到ColumnHeaderAutoResizeStyle.ColumnContent这个feature。但看起来我用了,没有效果。这是为什么呢?
var header2 = listView1.Columns.Add("Second");
header1.Width = 200;但是这不是我期望的效果。
我希望达到的效果是根据列内容的长度来自动调整列宽,所以我想用到ColumnHeaderAutoResizeStyle.ColumnContent这个feature。但看起来我用了,没有效果。这是为什么呢?
给个连接
http://msdn.microsoft.com/zh-cn/library/system.windows.forms.listview.autoresizecolumn(v=vs.110).aspx
var header2 = listView1.Columns.Add("Second");
header1.Width = 200;但是这不是我期望的效果。
我希望达到的效果是根据列内容的长度来自动调整列宽,所以我想用到ColumnHeaderAutoResizeStyle.ColumnContent这个feature。但看起来我用了,没有效果。这是为什么呢?
给个连接
http://msdn.microsoft.com/zh-cn/library/system.windows.forms.listview.autoresizecolumn(v=vs.110).aspx谢谢你发的这个链接,我照着上面的做法,把下面这句:listView1.View = View.Details;
放到了InitializeComponent()后面就可以了!
问题解决!