Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.76/29: Рейтинг темы: голосов - 29, средняя оценка - 4.76
0 / 0 / 0
Регистрация: 29.11.2013
Сообщений: 25

Как узнать тип ячейки в dataGridView?

09.12.2013, 20:54. Показов 6367. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Как узнать тип ячейки в dataGridView?

Имеется в виду не тип значения (String/Int32 и т.д.), а тип самого контрола в ячейке (TextBox, CheckBox и т.д.)
Т.е. у меня таблица со смешанным типом ячеек, и мне надо определить тип ячейки, на которую кликнул юзер.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
09.12.2013, 20:54
Ответы с готовыми решениями:

Как узнать тип ячейки?
Текст, просто число или формула? Есть какое-нибудь свойство?

DataGridView Поменять тип ячейки
Возможно ли поменять тип ячейки с TextBoxColumn на ComboBoxColumn ?

Переопределить тип ячейки в datagridview'e
Здравствуйте, имеется метод, с помощью которого заполняется dgv, булевые значения считываются в виде checkbox'ов, как переопределить тип в...

4
)))
 Аватар для aleks_pilipenko
610 / 423 / 55
Регистрация: 31.12.2009
Сообщений: 2,334
Записей в блоге: 3
09.12.2013, 21:39
а не проще по номеру столбца тип ячейки определять?
0
0 / 0 / 0
Регистрация: 29.11.2013
Сообщений: 25
09.12.2013, 22:13  [ТС]
Цитата Сообщение от aleks_pilipenko Посмотреть сообщение
а не проще по номеру столбца тип ячейки определять?
Нет, не проще. У меня в одном столбце СМЕШАННЫЕ ячейки.
0
)))
 Аватар для aleks_pilipenko
610 / 423 / 55
Регистрация: 31.12.2009
Сообщений: 2,334
Записей в блоге: 3
09.12.2013, 22:46
Вот
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
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
 
namespace TipYacheiki
{
    public partial class Form1: Form
    {
        private DataGridView dataGridView1;
        private DataGridViewTextBoxColumn Column1;
        private DataGridViewButtonColumn Column2;
        private DataGridViewComboBoxColumn Column3;
    
        [STAThread]
        static void Main()
        { Application.Run(new Form1()); }
        public Form1()
        {
            InitializeComponent();
        }
 
        private void InitializeComponent()
        {
            this.dataGridView1 = new System.Windows.Forms.DataGridView();
            this.Column1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
            this.Column2 = new System.Windows.Forms.DataGridViewButtonColumn();
            this.Column3 = new System.Windows.Forms.DataGridViewComboBoxColumn();
            ((System.ComponentModel.ISupportInitialize)(this.dataGridView1)).BeginInit();
            this.SuspendLayout();
            // 
            // dataGridView1
            // 
            this.dataGridView1.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
            this.dataGridView1.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
            this.Column1,
            this.Column2,
            this.Column3});
            this.dataGridView1.Location = new System.Drawing.Point(72, 67);
            this.dataGridView1.Name = "dataGridView1";
            this.dataGridView1.Size = new System.Drawing.Size(362, 152);
            this.dataGridView1.TabIndex = 0;
            this.dataGridView1.SelectionChanged += new System.EventHandler(this.dataGridView1_SelectionChanged);
            // 
            // Column1
            // 
            this.Column1.HeaderText = "Column1";
            this.Column1.Name = "Column1";
            // 
            // Column2
            // 
            this.Column2.HeaderText = "Column2";
            this.Column2.Name = "Column2";
            // 
            // Column3
            // 
            this.Column3.HeaderText = "Column3";
            this.Column3.Name = "Column3";
            // 
            // Form1
            // 
            this.ClientSize = new System.Drawing.Size(551, 293);
            this.Controls.Add(this.dataGridView1);
            this.Name = "Form1";
            ((System.ComponentModel.ISupportInitialize)(this.dataGridView1)).EndInit();
            this.ResumeLayout(false);
 
        }
 
        private void dataGridView1_SelectionChanged(object sender, EventArgs e)
        {
            var x = dataGridView1.SelectedCells[0].ColumnIndex;
            var y = dataGridView1.SelectedCells[0].RowIndex;
            if (dataGridView1.Rows[y].Cells[x] is DataGridViewButtonCell) this.Text = "DataGridViewButtonCell";
            if (dataGridView1.Rows[y].Cells[x] is DataGridViewTextBoxCell) this.Text = "DataGridViewTextBoxCell";
            if (dataGridView1.Rows[y].Cells[x] is DataGridViewComboBoxCell) this.Text = "DataGridViewComboBoxCell";
            
        }
    }
}
1
0 / 0 / 0
Регистрация: 29.11.2013
Сообщений: 25
09.12.2013, 22:55  [ТС]
Цитата Сообщение от aleks_pilipenko Посмотреть сообщение
Вот
Спасибо)
Я уже придумал также вариант на основе GetType().
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
09.12.2013, 22:55
Помогаю со студенческими работами здесь

Не могу сконвертировать данные ячейки datagridview в тип double
Извиняюсь, проблему решил сам :)

Форматирование ячейки в dataGridView. Как поменять цвет определенной ячейки
Хочу поменять цвет выбранной ячейки, так что бы когда при выбраной строки цвет ячейки оставался таким же. Пример: Что бы дата...

Datagridview выделено несколько ячеек в строке - по нажатию правой клав узнать номер первой и последней ячейки
Доброго! А как вызвать контекстное меню, когда в datagridview выделено несколько ячеек в строке и при этом необходимо узнать номер первой и...

Как узнать объединены ли ячейки
Здравствуйте. Помогите пожалуйста. Как определить объединены ли ячейки. Задача такая перебирая строки в таблице определить объединены ли...

Ячейки DataGridView как текстбоксы
Если навести курсор мыши на элемент Текстбокс (с текстом или без), то вид курсора меняется с стрелки на курсор редактирования, и одним...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru