2013-05-15 3 views
2

У меня есть DataGridView в мастере, который создается с помощью TabControl. Когда отображается это DataGridView, отображается смесь содержимого ячейки и предыдущей страницы мастера. Когда я нажимаю на следующую страницу мастера и затем перехожу на предыдущую страницу, DataGridView отображается правильно. Я беру картину этого:DataGridView не окрашен должным образом

enter image description here

Первой ячейку с правого в первом ряду испорченной. Как я могу это исправить?

EDIT: Вы можете воспроизвести эту ошибку таким образом: поместите небольшой DGV в форму. Ширина DGV составляет 268, а ее высота - 247. Добавьте к ней шесть столбцов. Поместите эти строки кода в методе события загрузки формы:

string[] row = new string[6]; 
for (int i = 0; i < 10; i++) 
{ 
    row[0] = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"; 
    row[1] = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"; 
    row[2] = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"; 
    row[3] = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"; 
    row[4] = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"; 
    row[5] = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"; 
    dataGridView1.Rows.Add(row); 
} 

Наконец перейти к DGV свойств затем DefaultCellStyle и изменить BackColor к прозрачному. Запустите, и вам нужно только прокрутить вправо. Картина этой проблемы:

http://oi42.tinypic.com/35avtp2.jpg

Я думаю, что проблема прозрачного цвета. Изменение прозрачности какого-либо цвета, кроме прозрачного, решит проблему, но я не знаю почему.

+0

Трудно сказать, не зная, как работает ваша живопись. Возможно, поделитесь некоторым кодом. – Neolisk

+0

Я не совсем уверен, что это «коррумпированный» или проблема с картинкой. Возможно, эта ячейка имеет неправильный 'Font'. – JosephHirn

+0

@ Ginosaji Я изменил все шрифты, но возникла одна и та же проблема. – blackhalo1989

ответ

1

Спасибо .. да это связано с прозрачным цветом, я изменил прозрачность на белый, и мой DGV хорошо работает.

Смежные вопросы