|
Как рисовать в ячейке DataGridView?
|
|||
---|---|---|---|
#18+
Хочу нарисовать закрашенный квадратик в ячейке Cell элемента DataGridView по событию CellPainting. Проблема в том, что Graphics ячейки рисует рисовальню в самом низу, за фоном ячейки. А как поверх? Подскажите. Вот код: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2015, 14:31 |
|
Как рисовать в ячейке DataGridView?
|
|||
---|---|---|---|
#18+
Изучающий си решетка, отнаследоваться от DataGridViewTextBoxCell и перекрыть Код: c# 1. 2. 3. 4. 5. 6.
рисуй что хочешь ... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2015, 15:41 |
|
Как рисовать в ячейке DataGridView?
|
|||
---|---|---|---|
#18+
Где-то в степи, извини но я не понял. Можно подробно? Допустим я создал класс "наследник" и что дальше? Создаю его экземпляр, на экземпляре рисую используя объект Graphics из родной таблицы как-то? Не знаю. Вот например написал Код: c# 1. 2. 3. 4. 5. 6. 7. 8.
И что с этим делать? Здесь protected, это не public и он где угодно не виден. В общем по-подробнее для тупых ... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2015, 19:50 |
|
Как рисовать в ячейке DataGridView?
|
|||
---|---|---|---|
#18+
Изучающий си решетка, ну что делать, давай порассуждаем, что бы нарисовать что то надо в камеру передать какие то данные снаружи, то есть все говно что ты задумал инкапсулироать в этого наследника, на свет вытащить свойство или метод ( в принципе однохуйственно) что бы запилить из кода снаружи, можно явно можно в виде интерфейса. Что бы твое изделие №2 прижилось в таблице можно создать тип колонки для твоего изделия: отнаследоваться от DataGridViewTextBoxColumn и перекрыть свойство DataGridViewCell которое будет возвращать твоего уродца и все.... при желании можешь писать туда текст, вставлять с ним картинки или рисовать.., поищи в гугле,этого добра как грязи.. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2015, 20:16 |
|
Как рисовать в ячейке DataGridView?
|
|||
---|---|---|---|
#18+
Где-то в степи, Вот самая примитивная заготовка проекта с таблицей (см. приложение). Можешь вписать прямо в нее работающий вариант рисования в ячейке? Трудно понять работу колеса на словах. Проще дать мне работающее колесо, я его увижу, пощупаю, разберу и такое же сделаю. Насчет в гугле поискать, мне даже с msdn трудно работать. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2015, 20:51 |
|
Как рисовать в ячейке DataGridView?
|
|||
---|---|---|---|
#18+
Изучающий си решетка, Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73.
... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2015, 21:41 |
|
Как рисовать в ячейке DataGridView?
|
|||
---|---|---|---|
#18+
Где-то в степи, Попробовал нарисовать нужный маленький квадрат с отступом от краев clipBounds ячейки. Почему-то делегат Action вызывается несколько раз, хотя должен только для ячейки [0][0]. И вместо аккуратного рисунка в одной ячейке выходит клякса. В методе Paint моего наследника MyCell пишу такое: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9.
Хочу объяснить зачем это нужно. Есть таблица свойств объектов, и одно из свойств, одна колонка, это цвет объекта. Просто выводить в ячейку текст с именем цвета это не интересно, хотелось еще и дорисовывать квадратик этого цвета. Вроде простое естественное желание. И даже событие CellPainting предусмотрено. Странно, что CellPainting рисует за фоном ячейки. Тогда вообще зачем он нужен, атавизм что ли? Все равно что делать узор на изнаночной стороне. Наверное, в этой ситуации проще не городить наследников, а просто перед столбцом с именами цветов, сделать небольшой фиктивный столбец с ячейками с соответствующим цветом фона. Благо назначить цвет фона ячейки это не высшая математика. Дешево и просто. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2015, 23:52 |
|
Как рисовать в ячейке DataGridView?
|
|||
---|---|---|---|
#18+
Изучающий си решетка, Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90.
... |
|||
:
Нравится:
Не нравится:
|
|||
13.12.2015, 10:57 |
|
Как рисовать в ячейке DataGridView?
|
|||
---|---|---|---|
#18+
Где-то в степи, Теперь заработало. Вопрос для саморазвития: делегат Action - насколько это фундаментальная вещь? Пока не очень понимаю зачем он и где и как используется. Можно ли было без него реализовать. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2015, 01:07 |
|
Как рисовать в ячейке DataGridView?
|
|||
---|---|---|---|
#18+
Изучающий си решеткаМожно ли было без него реализовать. можно ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2015, 07:36 |
|
Как рисовать в ячейке DataGridView?
|
|||
---|---|---|---|
#18+
Изучающий си решетка, авторхотелось еще и дорисовывать квадратик этого цвета. Вроде простое естественное желание это противоестественное желание, я бы сказал отклонение, - гейропой попахивает. Ебашить нужно в чернобелых иксово - консольных тонах. Что до делегатов, это фундаментальное понятие языка, и куда вы будете с этим пробелом двигать? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2015, 08:06 |
|
Как рисовать в ячейке DataGridView?
|
|||
---|---|---|---|
#18+
Где-то в степибашить нужно в чернобелых иксово - консольных тонах в любой CAD-программе объекты разных цветов. Даже светофор и то зеленый. Значки пожарки и эвакуации, да хоть не знаю. На аккумуляторе клеммы красная и черная. В черно-белых жестковато, тогда зачем нам цветное зрение от природы? Где-то в степиЧто до делегатов, это фундаментальное понятие языка да, но как-то я привык делегатствовать наследоваться перекрывать только в собственных объектах, а то что зашито в System хочется использовать "как есть". И этот делегат, Action, не знаю, как будто универсальный какой-то и у любого object есть. Только вот зачем. Да, хочу сказать еще о цветах. Изополя напряжений - комментировать лишне. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2015, 11:05 |
|
Как рисовать в ячейке DataGridView?
|
|||
---|---|---|---|
#18+
Изучающий си решеткаИ этот делегат, Action, не знаю, как будто универсальный какой-то и у любого object есть. код смотрите внимательно - откуда он берётся. в MyCell (который наследник DataGridViewTextBoxCell) просто добавлено свойство с именем Action Изучающий си решеткада, но как-то я привык делегатствовать наследоваться перекрывать только в собственных объектах, а то что зашито в System хочется использовать "как есть". Что за предрассудки? Отвыкайте. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2015, 13:47 |
|
Как рисовать в ячейке DataGridView?
|
|||
---|---|---|---|
#18+
Изучающий си решетка, нет уж любезный, не знаю как у Вас, а у нас делегат - друг человека, я не удивлюсь, если выяснится, что и интерфейсы чужды для вас как и делегаты, до кучи лямбды и деревья выражений, и что мы имеем в остатке? прикрывать привычкой: "но как-то я привык делегатствовать" свои пробелы в знаниях неприлично, уж извольте взять умные книжки и читать их до дыр, восполняя знания в базовых пределах. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2015, 14:43 |
|
Как рисовать в ячейке DataGridView?
|
|||
---|---|---|---|
#18+
Где-то в степи, да, это так. Ни разу не использовал переменную типа интерфейса. Деревья выражений - это цепочки вызовов? Тогда тоже не использовал. Единственный случай использования мной делегата - это простановка с помощью переменной типа делегата пределов в 2-х 3-х мерном цикле. Например квадрат обходится x от 1 до 5 y от 1 до 5, а треугольник y от 1 до 5-x. И чтобы не пробивать кучу if, я тогда сделал делегат на предельное значение цикла. Но потом сделал лучше, сделал класс Фигура, а Квадрат и Треугольник как наследники со своими методами проходки. Самую умную книгу прочитал - это Шилдт C# 4.0. Но многое из того прочитал, и думаю а зачем оно? И не использую. Например рефлексия. Какие еще умные книги посоветуете? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2015, 17:32 |
|
Как рисовать в ячейке DataGridView?
|
|||
---|---|---|---|
#18+
Где-то в степи, Что ты прикопался, ясно же сказано: " Изучающий си решетка". Вот как сменит ник на " Изучивший си решетка"..... ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2015, 19:10 |
|
Как рисовать в ячейке DataGridView?
|
|||
---|---|---|---|
#18+
Shocker.Pro, моя учительница по литературе говорила, "так ты учил или выучил ???" ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2015, 21:04 |
|
Как рисовать в ячейке DataGridView?
|
|||
---|---|---|---|
#18+
Изучающий си решеткамоя учительница по литературе говорила, "так ты учил или выучил ???" мучил ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2015, 22:50 |
|
|
start [/forum/topic.php?fid=20&msg=39128018&tid=1400967]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
31ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
48ms |
get tp. blocked users: |
1ms |
others: | 321ms |
total: | 442ms |
0 / 0 |