Почему столбец 4` не выбран? Я использую listView3_DrawSubItem и e.DrawDefault = true; для этого столбца и теперь не выбирается.ListView drawsubitem - столбец не выбран
Edit: Код listView1_DrawSubItem:
// Only interested in 2nd column.
if (e.Header != this.action)
{
e.DrawDefault = true;
return;
}
drawItem(e);
И код DrawItem:
string drawString = e.SubItem.Text;
float size = 8.25F;
e.DrawBackground();
Bitmap image = new Bitmap(DesktopCleaner.Properties.Resources.folder_icon_512x512);
if (drawString == "Leave on Desktop")
{
image = new Bitmap(DesktopCleaner.Properties.Resources.desk);
}
else if (drawString == "Recycle")
{
image = new Bitmap(DesktopCleaner.Properties.Resources.recyclebin_preview_1);
}
else if (drawString == "Delete")
{
image = new Bitmap(DesktopCleaner.Properties.Resources.free_vector_delete_icon_101805_Delete_icon);
}
var imageRect = new Rectangle(e.Bounds.X + 3, e.Bounds.Y, image.Width - 2, image.Height - 2);
e.Graphics.DrawImage(image, imageRect);
System.Drawing.Font drawFont = new System.Drawing.Font(listView1.Font.FontFamily, size, FontStyle.Bold);
System.Drawing.SolidBrush drawBrush = new System.Drawing.SolidBrush(System.Drawing.Color.Black);
System.Drawing.StringFormat drawFormat = new System.Drawing.StringFormat();
var strrect = new Rectangle(e.Bounds.X + 18, e.Bounds.Y + 3, 150, e.Bounds.Height);
e.Graphics.DrawString(drawString, drawFont, drawBrush, strrect, drawFormat);
Возможно, он выбран, но он не отображается. Как вы делаете выбор? Откуда появляются значки, когда у вас есть 'e.DrawDefault = true'? Можете ли вы показать нам код DrawSubItem? – TaW
Я только что обновил вопрос. –
Вы игнорируете e.ItemState. Не. –