Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.01.2012, 10:43   #1
mrChester
Я
Форумчанин
 
Аватар для mrChester
 
Регистрация: 24.04.2010
Сообщений: 693
По умолчанию Отключение строки Grid'a

Такая проблема.
При определенных условиях мне нужно отключить строку в DataGrid. Её не нужно удалять, визуально я её должен видеть.
Нужен метод типа, но его нет
Код:
row.Enabled = false; //row - строка грида
Все персонажи вымышлены, все совпадения случайны.
Если жизнь игра, тогда я её разработчик ©.
mrChester вне форума Ответить с цитированием
Старый 26.01.2012, 12:26   #2
Hollander
Участник клуба
 
Аватар для Hollander
 
Регистрация: 03.05.2007
Сообщений: 1,189
По умолчанию

Т.е. просто запретить редактирование? Тогда
Код:
row.ReadOnly = true;
Если надо еще и как-то подсветить её, тогда подписываемся на CellFormatting и что-то типа такого делаем:
Код:
if (dataGrid.Rows[e.RowIndex].ReadOnly)
{
  e.CellStyle.BackColor = Color.Green;
}
Hollander вне форума Ответить с цитированием
Старый 26.01.2012, 12:48   #3
mrChester
Я
Форумчанин
 
Аватар для mrChester
 
Регистрация: 24.04.2010
Сообщений: 693
По умолчанию

Может быть со стандартными гридами такая вещь и пошла бы, а вот у нас infragistics. Есть там похожее свойство, но оно только для чтения. Решу вопрос другим способом. Спасибо за ответ
Все персонажи вымышлены, все совпадения случайны.
Если жизнь игра, тогда я её разработчик ©.
mrChester вне форума Ответить с цитированием
Старый 26.01.2012, 13:56   #4
Hollander
Участник клуба
 
Аватар для Hollander
 
Регистрация: 03.05.2007
Сообщений: 1,189
По умолчанию

Я не пользовался infragistics, на практически уверен что у них методы чтобы раскрасить строки и запретить редактирование.
Hollander вне форума Ответить с цитированием
Старый 26.01.2012, 17:57   #5
mrChester
Я
Форумчанин
 
Аватар для mrChester
 
Регистрация: 24.04.2010
Сообщений: 693
По умолчанию

Сделал так, во время инициализации добавил картинку (замочек, нельзя редактировать).
Код:
ugGrid.Rows.Where  (row => ConflictIDs.Contains(((MyClass)row.ListObject).ID) == true).ForAll(r => r.Cells["Name"].Appearance.Image = Properties.Resources.ProtectImage);
Потом добавил обработчик
Код:
        private void ugGrid_BeforeCellActivate(object sender, Infragistics.Win.UltraWinGrid.CancelableCellEventArgs e)
        {
            if (e.Cell.Column.Key == "Checked")
            {
                if (e.Cell.Row.Cells["Name"].Appearance.Image != null)
                {
                    e.Cancel = true;
                    e.Cell.Row.Selected = true;
                }

            }
        }

        private void ugGrid_CellChange(object sender, Infragistics.Win.UltraWinGrid.CellEventArgs e)
        {
            e.Cell.Row.Activate();
            e.Cell.Row.Selected = true;
        }
Все персонажи вымышлены, все совпадения случайны.
Если жизнь игра, тогда я её разработчик ©.
mrChester вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Отключение предупреждения crazyman_77 Microsoft Office Excel 5 23.01.2011 00:54
Отключение выделения Gromsky HTML и CSS 5 01.12.2009 13:31
Отключение мышки Yuran Win Api 2 23.06.2008 13:08
отключение процессов UROKSAN Win Api 1 10.04.2008 09:08
Отключение питания Terran Общие вопросы Delphi 5 09.12.2007 00:44