Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Разработка Windows Forms > GridControl (DevExpress)


Автор: damir83 27.1.2009, 07:38
Подскажите пж
как отобразить(с возможностью корректировки) данные из таблицы

поставил компонент GridControl (DevExpress)
все отображается, редактируется
теперь надо для одного поля указать что он будет с "галочкой"
 в свойствах все указал вроде (Check. UnCheck )

но как то он не так работает....
те признак он сохраняет проставленный, но не отображает эту галочку, квадратик там стоит всегда

что не так?

Автор: Roha 27.1.2009, 10:01
Какой тип поля? При типе bool у меня все работает

Автор: damir83 27.1.2009, 10:26
Тип поля Number


еще глюк или что это
вот я поставил галку, не сохранился
перешел на следующую запись галка исчезает на предидущей записи

вообще в этом компоненте GridControl (DevExpress) свойств скоко
обычный DataGridView намного проще

можно где нить прочитать про эти неизвестные мне свойства?

сейчас сижу ищу
пока результатов нет....

Добавлено через 9 минут и 44 секунды
смотри

моя последовательность действий

1, вызвал контекстное меню на GridControl
2, Выбрал Run Designer
3 вкладка Columns
4 выбрал нужный мне столбец
5 свойство ColumnEdit выбираю репозиторий CheckEdit
6 проставляю ему свойства VаlueChecked=1 (нумбер), VаlueUnchecked=0 (нумбер),ValueGrayed=0

все

запускаю
данные из табл отображаются, но именно этот столбец весь пустой
хотя в таблице есть записи с 1 или 0

Автор: Roha 27.1.2009, 13:37
Цитата

моя последовательность действий

1, вызвал контекстное меню на GridControl
2, Выбрал Run Designer
3 вкладка Columns
4 выбрал нужный мне столбец
5 свойство ColumnEdit выбираю репозиторий CheckEdit
6 проставляю ему свойства VаlueChecked=1 (нумбер), VаlueUnchecked=0 (нумбер),ValueGrayed=0


Проделал все тоже самое - работает (DevExpress 8.1). 
Повторяется глюк только в случае если VаlueChecked=true (bool), VаlueUnchecked=false (bool)

Грид заполняешь руками или через BindingSource??

Автор: damir83 27.1.2009, 14:11
через  BindingSource заполняю

версия DevExpress 8.3.2

Автор: Roha 27.1.2009, 14:28
Источником данных у тебя что SQL или что-то другое?? Хочется повторить ситуацию и если можно структуру таблицы опиши

Автор: damir83 27.1.2009, 14:35
CREATE TABLE ST_DISC
(
  KOD        NUMBER(6)                          NOT NULL,
  NOM   VARCHAR2(20 CHAR),
  DDOC       DATE                               NOT NULL,
  OSNOVANIE  VARCHAR2(255 CHAR),
  BLOK       NUMBER(1)                          DEFAULT 0                     NOT NULL,
  PROIZVD    NUMBER(5)                          NOT NULL
)

CREATE UNIQUE INDEX N_KART ON ST_DISC
(NOM, PROIZVD)
LOGGING
TABLESPACE WORK
PCTFREE    10
INITRANS   2
MAXTRANS   255
STORAGE    (
            INITIAL          64K
            MINEXTENTS       1
            MAXEXTENTS       UNLIMITED
            PCTINCREASE      0
            FREELISTS        1
            FREELIST GROUPS  1
            BUFFER_POOL      DEFAULT
           )
NOPARALLEL;


CREATE OR REPLACE TRIGGER tgr_disc_insert before insert ON ST_DISC for each row
begin
select ss_disc.nextval into :new.kod from dual;
end;
/


ALTER TABLE ST_DISC ADD (
  PRIMARY KEY
 (KOD)
    USING INDEX 
    TABLESPACE WORK
    PCTFREE    10
    INITRANS   2
    MAXTRANS   255
    STORAGE    (
                INITIAL          64K
                MINEXTENTS       1
                MAXEXTENTS       UNLIMITED
                PCTINCREASE      0
                FREELISTS        1
                FREELIST GROUPS  1
               ),
  CONSTRAINT N_KART
 UNIQUE (NOM, PROIZVD)
    USING INDEX 
    TABLESPACE WORK
    PCTFREE    10
    INITRANS   2
    MAXTRANS   255
    STORAGE    (
                INITIAL          64K
                MINEXTENTS       1
                MAXEXTENTS       UNLIMITED
                PCTINCREASE      0
                FREELISTS        1
                FREELIST GROUPS  1
               ));

поле BLOK - признак блокирования (галочка) 1- да 0-нет

Добавлено через 2 минуты и 39 секунд
Источник данных DataTable

Автор: Roha 27.1.2009, 14:54
Как вариант:
   1. На форму закинуть новый грид и ничего не меняя привяжи к нему свою таблицу;
   2. Установи свойство ColumnEdit репозиторий CheckEdit и VаlueChecked=1 (number), VаlueUnchecked=0 (number) [как уже делал]
 Если эффекта никакого попробуй еще установить свойства в ColumnEdit
Код

gridView1.Columns["BLOK"].ColumnEdit.EditFormat.FormatType = DevExpress.Utils.FormatType.Numeric;
gridView1.Columns["BLOK"].ColumnEdit.EditFormat.FormatString = "n0";

gridView1.Columns["BLOK"].ColumnEdit.DisplayFormat.FormatType = DevExpress.Utils.FormatType.Numeric;
gridView1.Columns["BLOK"].ColumnEdit.DisplayFormat.FormatString = "n0";

Автор: THandle 28.1.2009, 11:29

M
THandle
damir83, пользуйтесь кнопкой "Код" или соответствующими тегами. Если нужной подсветки нет, то используйте пункт "Без подсветки"

Автор: damir83 28.1.2009, 12:30
не помогает!
также все

кажется это глюк DevExpressа....

Решил простой компонент DataGridView использовать, в нем все работает

Roha, спс!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)