Нарисуйте границу для изображения в списке
2374 просмотра
1 ответ
В древовидной структуре после события выбора я заполняю вид списка изображениями.
Я хочу отформатировать эти изображения и поместить вокруг каждого изображения черную цветную рамку.
private void TreeView1_Select(object sender, EventArgs e) {
if (folder != null && System.IO.Directory.Exists(folder)) {
DirectoryInfo dir = new DirectoryInfo(@folder);
foreach (FileInfo file in dir.GetFiles()) {
try {
imageList.Images.Add(Image.FromFile(file.FullName));
} catch {
Console.WriteLine("This is not an image file");
}
}
for (int j = 0; j < imageList.Images.Count; j++) {
this.ListView1.Items.Add("Item" + j);
this.ListView1.Items[j].ImageIndex = j;
}
this.ListView1.View = View.LargeIcon;
this.ListView1.LargeImageList = imageList;
this.ListView1.DrawItem +=
new DrawListViewItemEventHandler(ListView1_DrawItem);
}
}
private void ListView1_DrawItem(object sender, DrawListViewItemEventArgs e)
{
}
Автор: rockrule
Источник
Размещён: 13.11.2019 11:50
Ответы (1)
1 плюс
Я бы добавил границу, используя Graphics
объект сразу после загрузки изображений из файла:
РЕДАКТИРОВАТЬ : изменил код, это работает для меня ...
private void TreeView1_Select(object sender, EventArgs e) {
if (folder != null && System.IO.Directory.Exists(folder)) {
DirectoryInfo dir = new DirectoryInfo(@folder);
foreach (FileInfo file in dir.GetFiles()) {
Image img = new Bitmap(Image.FromFile(file.FullName));
using (Graphics g = Graphics.FromImage(img)){
g.DrawRectangle(Pens.Black, 0, 0, img.Width - 2, img.Height - 2);
}
imageList.Images.Add(img);
ПРИМЕЧАНИЕ : копирование изображения предназначено; если я изменю код на
Image img = (Bitmap)Bitmap.FromFile("test.bmp");
как предлагается в комментариях, я получаю исключение, говорящее: «Графический объект не может быть создан из изображения, имеющего индексированный формат пикселей».
Автор: Paolo Tedesco Размещён: 06.10.2009 08:04Вопросы из категории :
- c# Преобразовать десятичную в двойную?
- c# Как рассчитать чей-то возраст в C #?
- c# Как вы сортируете словарь по значению?
- c# В чем разница между int и Integer в Java и C #?
- .net Как создать новый экземпляр объекта из Типа
- .net Действительно ли опечатанные классы действительно предлагают преимущества?
- image Хранение изображений в БД - да или нет?
- image Эффективное изменение размера JPEG изображения в PHP
- image Алгоритм сравнения двух изображений
- image Изображения в PHP
- listview Как я могу получить доступ к ListViewItems WPF ListView?
- listview Прокрутите список в WPF в определенную строку
- listview c # мерцание Listview при обновлении
- listview Добавление кнопки в ListView в WinForms
- drawing Преобразование растровых изображений в одно многостраничное изображение TIFF в .NET 2.0
- drawing Graphics.DrawRectangle (Pen, RectangleF)
- drawing Библиотека для рисования музыкальных нот
- drawing Нарисовать стрелку на теге холста