在c#listview中,将列的开头而不是结尾截断
在c#中,我有一个listview控件。我希望其中一列中的文本字段在开头而不是结尾被截断 i、 e.我希望第2列中的文本字段为: …名称1 …名称2 …名称3 而不是 菲琳娜 菲琳娜 filena…试试看在c#listview中,将列的开头而不是结尾截断,c#,listview,C#,Listview,在c#中,我有一个listview控件。我希望其中一列中的文本字段在开头而不是结尾被截断 i、 e.我希望第2列中的文本字段为: …名称1 …名称2 …名称3 而不是 菲琳娜 菲琳娜 filena…试试看 void Form1_Load(object sender, EventArgs e) { listView1.OwnerDraw = true; listView1.DrawColumnHeader +=listView1_DrawColumn
void Form1_Load(object sender, EventArgs e)
{
listView1.OwnerDraw = true;
listView1.DrawColumnHeader +=listView1_DrawColumnHeader;
listView1.DrawSubItem+=listView1_DrawSubItem;
}
private void listView1_DrawColumnHeader(object sender, DrawListViewColumnHeaderEventArgs e)
{
e.DrawText();
}
private void listView1_DrawSubItem(object sender, DrawListViewSubItemEventArgs e)
{
e.DrawText(TextFormatFlags.Right);
}
如果它只是一个特定的列,您希望看到这种行为,请说col index=5,然后再试一次
private void listView1_DrawSubItem(object sender, DrawListViewSubItemEventArgs e)
{
if (e.ColumnIndex == 5)
{
e.DrawText(TextFormatFlags.Right);
}
else
{
e.DrawText();
}
}
谢谢,但是在使用ownerdraw=true之前,我没有得到相同的表布局(例如,不同的列宽)