У меня есть куча файлов PDF, я хочу показать имена файлов и миниатюр PDF в DataGridView. Код, создающий миниатюры, является решением здесь: извлечь миниатюру для любого файла в Windows. Я думаю, что проблема каким -то образом связана с DataGridViewImageColumn. В качестве теста я загружаю ту же растровую карту в ImageColumn и PictureBox. PictureBox верен, ImageColumn имеет красный X без изображения. Я проверил несколько решений здесь на SO (изображения не загружаются в DataGridView C# - Visual Studio 2022 и все они связаны внутри), но ничто не похоже на точку, и все кажется таким же, как и то, что я делаю. < /P>
public DataGridViewImage(string path)
{
InitializeComponent();
DataTable table = new DataTable();
table.Columns.Add("path");
DataRow row = table.NewRow();
row["path"] = path;
table.Rows.Add(row);
dataGridView1.DataSource = table;
}
private void dataGridView1_DataSourceChanged(object sender, EventArgs e)
{
foreach (DataGridViewRow row in dataGridView1.Rows)
{
string path = row.Cells["pathCol"].Value.ToString();
int THUMB_SIZE = 256;
Bitmap thumbnail = WindowsThumbnailProvider.GetThumbnail(
path, THUMB_SIZE, THUMB_SIZE, ThumbnailOptions.None);
(row.Cells["imageCol"] as DataGridViewImageCell).Value = thumbnail;
pictureBox1.Image = thumbnail;
}
}
Одна итатрация этого примера имела код в настоящее время в конструкции в ручной нагрузке, что версия, в которой есть всякая почина, в какой -либо причине. public DataGridViewImage()
{
InitializeComponent();
}
private void DataGridViewImage_Load(object sender, EventArgs e)
{
string path = @"F:\sample.pdf";
DataTable table = new DataTable();
table.Columns.Add("path");
DataRow row = table.NewRow();
row["path"] = path;
table.Rows.Add(row);
dataGridView1.DataSource = table;
}
Очевидно, я не могу жестко кодировать фактический проект и не положить приступ в событии нагрузки. Может ли кто -нибудь дать некоторое представление о том, что здесь происходит? Я сохранил одну из миниатюр в качестве JPEG, а затем изменил свой код, чтобы полностью удалить класс ThumbnailGenerator. DataGridView по -прежнему не показывает изображение. Результаты этого кода точно такие же, как первое изображение выше. < /P>
private void dataGridView1_DataSourceChanged(object sender, EventArgs e)
{
foreach (DataGridViewRow row in dataGridView1.Rows)
{
OpenFileDialog dialog = new OpenFileDialog();
if (dialog.ShowDialog() == DialogResult.OK)
{
Bitmap displayImg = new Bitmap(dialog.FileName);
(row.Cells["imageCol"] as DataGridViewImageCell).Value = displayImg;
pictureBox1.Image = displayImg;
}
}
}
Подробнее здесь: https://stackoverflow.com/questions/796 ... magecolumn
Миниатюрный образ, несовместимый в DataGridViewImageColumn ⇐ C#
Место общения программистов C#
-
Anonymous
1750934843
Anonymous
У меня есть куча файлов PDF, я хочу показать имена файлов и миниатюр PDF в DataGridView. Код, создающий миниатюры, является решением здесь: извлечь миниатюру для любого файла в Windows. Я думаю, что проблема каким -то образом связана с DataGridViewImageColumn. В качестве теста я загружаю ту же растровую карту в ImageColumn и PictureBox. PictureBox верен, ImageColumn имеет красный X без изображения. Я проверил несколько решений здесь на SO (изображения не загружаются в DataGridView C# - Visual Studio 2022 и все они связаны внутри), но ничто не похоже на точку, и все кажется таким же, как и то, что я делаю. < /P>
public DataGridViewImage(string path)
{
InitializeComponent();
DataTable table = new DataTable();
table.Columns.Add("path");
DataRow row = table.NewRow();
row["path"] = path;
table.Rows.Add(row);
dataGridView1.DataSource = table;
}
private void dataGridView1_DataSourceChanged(object sender, EventArgs e)
{
foreach (DataGridViewRow row in dataGridView1.Rows)
{
string path = row.Cells["pathCol"].Value.ToString();
int THUMB_SIZE = 256;
Bitmap thumbnail = WindowsThumbnailProvider.GetThumbnail(
path, THUMB_SIZE, THUMB_SIZE, ThumbnailOptions.None);
(row.Cells["imageCol"] as DataGridViewImageCell).Value = thumbnail;
pictureBox1.Image = thumbnail;
}
}
Одна итатрация этого примера имела код в настоящее время в конструкции в ручной нагрузке, что версия, в которой есть всякая почина, в какой -либо причине. public DataGridViewImage()
{
InitializeComponent();
}
private void DataGridViewImage_Load(object sender, EventArgs e)
{
string path = @"F:\sample.pdf";
DataTable table = new DataTable();
table.Columns.Add("path");
DataRow row = table.NewRow();
row["path"] = path;
table.Rows.Add(row);
dataGridView1.DataSource = table;
}
Очевидно, я не могу жестко кодировать фактический проект и не положить приступ в событии нагрузки. Может ли кто -нибудь дать некоторое представление о том, что здесь происходит? Я сохранил одну из миниатюр в качестве JPEG, а затем изменил свой код, чтобы полностью удалить класс ThumbnailGenerator. DataGridView по -прежнему не показывает изображение. Результаты этого кода точно такие же, как первое изображение выше. < /P>
private void dataGridView1_DataSourceChanged(object sender, EventArgs e)
{
foreach (DataGridViewRow row in dataGridView1.Rows)
{
OpenFileDialog dialog = new OpenFileDialog();
if (dialog.ShowDialog() == DialogResult.OK)
{
Bitmap displayImg = new Bitmap(dialog.FileName);
(row.Cells["imageCol"] as DataGridViewImageCell).Value = displayImg;
pictureBox1.Image = displayImg;
}
}
}
Подробнее здесь: [url]https://stackoverflow.com/questions/79604255/thumbnail-image-inconsistant-in-datagridviewimagecolumn[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия