Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Использование DevExpress 2

Модерирует : ShIvADeSt

ShIvADeSt (07-02-2009 14:53): Продолжаем тут
http://forum.ru-board.com/topic.cgi?forum=33&topic=10123#1
 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122

   

ShIvADeSt



Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
DevExpress

Обмен опытом, обсуждение нюансов и решение проблем возникающих при использовании библиотеки компонент Developer Express




 
Сами прирученные компоненты частенько приходят на водопой сюда
 
DLL со скинами из библиотеки dxSkins, автор Ziltoid Подробнее... линк обновлен
Продолжение, начало тут
 

Всего записей: 3956 | Зарегистр. 29-07-2003 | Отправлено: 03:16 29-01-2007 | Исправлено: VitaliM, 15:47 24-11-2008
JonyBes

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите как программно нажать кнопку в ButtonEdit.

Всего записей: 371 | Зарегистр. 29-11-2004 | Отправлено: 17:04 18-06-2007
Dronton2

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
JonyBes
Сначала для кнопки создаётся событие OnButtonClick, например, myButtonPropertiesButtonClick. Теперь можно вызвать:

Код:
myButtonPropertiesButtonClick(myButton, 0)

(Второй параметр - номер кнопки, начиная с 0)

Всего записей: 460 | Зарегистр. 27-06-2005 | Отправлено: 17:23 18-06-2007
idmail

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Надеюсь, тут можно задавать вопросы и по .NET...
1. Как сделать, чтоб xtraGrid изменял данные не пока запущена программа, а сразу писал изменения в базу? У меня к нему подключены TableAdapter и BindingSource.
2. Пользуюсь ломаной версией 6.3 Как в ней добавить новый отчет к проекту? У меня в меню Add new Item... нет айтема отчетов

Всего записей: 32 | Зарегистр. 14-12-2006 | Отправлено: 18:13 18-06-2007
int23



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
А скажите, кто-нить ставил Девок на Orcas? Поделитесь впечатлениями

Всего записей: 773 | Зарегистр. 16-08-2004 | Отправлено: 09:58 19-06-2007
raspe



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
idmail

Цитата:
Как сделать, чтоб xtraGrid изменял данные не пока запущена программа, а сразу писал изменения в базу? У меня к нему подключены TableAdapter и BindingSource

 
Не совсем понятно о чем речь
 

Цитата:
 Пользуюсь ломаной версией 6.3 Как в ней добавить новый отчет к проекту? У меня в меню Add new Item... нет айтема отчетов  
 
 
Добавь новый класс и отнаследуй его от XtraReport - студия тогда изменит иконку и появится дизайнер
 

Всего записей: 420 | Зарегистр. 22-07-2005 | Отправлено: 12:22 19-06-2007
idmail

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Не совсем понятно о чем речь

Речь о том, что таблица работает внутри проекта и хранит данные временно, не сохраняя при этом в саму базу данных и при закрытии программы никакие изменения не сохраняются. Дак как сделать, чтоб сохранялись?

Цитата:
Добавь новый класс и отнаследуй его от XtraReport - студия тогда изменит иконку и появится дизайнер

Куда его добавить и где появится иконка, какая иконка, откуда запустить дизайнер?

Всего записей: 32 | Зарегистр. 14-12-2006 | Отправлено: 12:55 19-06-2007
raspe



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Речь о том, что таблица работает внутри проекта и хранит данные временно, не сохраняя при этом в саму базу данных и при закрытии программы никакие изменения не сохраняются. Дак как сделать, чтоб сохранялись?  
 

 
Так DevExpress то тут при чем? Но можно поступить так: кинь на форму контрол DataNavigator от DevExpress. Свойству DataSource dataNavigatorа присвой свой bindingSource. У dataNavigatora подвяжись к событию нажатия на кнопку. И там вставь прмерно такой код:
 
[c#]
  private void dataNavigator1_ButtonClick(object sender, NavigatorButtonClickEventArgs e)
        {
            if(e.Button.ButtonType == NavigatorButtonType.EndEdit)
            {
               Validate();
               bindingSource.EndEdit();
               tableAdapter.Update(table);
               
               e.Handled = true;
            }
        }
[/c#]
 

Цитата:
 
Куда его добавить и где появится иконка, какая иконка, откуда запустить дизайнер?
 

 
К проекту добавь как обычно новый класс, этот класс наследуй от XtraReport, дальше студия все сделает сама

Всего записей: 420 | Зарегистр. 22-07-2005 | Отправлено: 14:19 19-06-2007
idmail

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
К проекту добавь как обычно новый класс, этот класс наследуй от XtraReport, дальше студия все сделает сама

Спасибо огромное, помогло, а т оя было уже отчаился.

Цитата:
Так DevExpress то тут при чем? Но можно поступить так: кинь на форму контрол DataNavigator от DevExpress. Свойству DataSource dataNavigatorа присвой свой bindingSource. У dataNavigatora подвяжись к событию нажатия на кнопку. И там вставь прмерно такой код:

Пробовал я делать нечто подобное - не помогает
Мне надо обновлять постоянно, как в дельфи гриды делают - сразу после изменения записи. Там есть эвент RowUpdate, надо использовать его, но метод Update не помогает

Всего записей: 32 | Зарегистр. 14-12-2006 | Отправлено: 17:05 19-06-2007
raspe



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
idmail

Цитата:
Мне надо обновлять постоянно, как в дельфи гриды делают - сразу после изменения записи

Кажется начинаю понимать, что тебе нужно. В общем 2 варианта:  
1) нужно сохранять запись (если она была изменена), при переходе на другую запись. Тогда подписываемся на событие gridView RowUpdated
 
[c#]
 gridView1.RowUpdated +=new DevExpress.XtraGrid.Views.Base.RowObjectEventHandler(gridView1_RowUpdated)
[/c#]
 
2) нужно сохранять запись сразу после изменения значения в ячейке грида. Тогда подписываемся уже на событие CellValueChanged
 
Но по хорошему, лучше подписаться на событие изменение не представления, а источника данных. Если это DataTable, то подписываемся на RowChanged, RowDeleted...
 
Думаю идея ясна  

Всего записей: 420 | Зарегистр. 22-07-2005 | Отправлено: 18:12 19-06-2007
idmail

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ну я ведь и говорил, про RowUpdate а как по этому эвенету теперь сохранить?
TableAdapter.Update(e.Row); не катит

Всего записей: 32 | Зарегистр. 14-12-2006 | Отправлено: 19:08 19-06-2007
raspe



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
idmail
Я выше приводил код, как занести данные в БД

Всего записей: 420 | Зарегистр. 22-07-2005 | Отправлено: 21:45 19-06-2007
idmail

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Код:
        private void gridView1_RowUpdated(object sender, RowObjectEventArgs e)
        {
            //System.Data.Common.DataAdapter da = null;
            autoBindingSource.EndEdit();
            autoTableAdapter.Update((DataRow)e.Row);
        }

Не работает
Может я что-то не то передаю в Update()?

Всего записей: 32 | Зарегистр. 14-12-2006 | Отправлено: 23:04 19-06-2007
raspe



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
idmail
Так ты похоже при создании data source указал, что нужно присоединить файл базы данных к проекту - у тебя всякий раз при запуске проекта этот файлик копируется в выходную директорию и затирает все твои изменения. Пересоздай data source и откажись от включения файла в проект

Всего записей: 420 | Зарегистр. 22-07-2005 | Отправлено: 11:33 20-06-2007
idmail

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Код:
автотранспортTableAdapter.Update(tyreManagerDataBaseDataSet.Автотранспорт);

Вот так прекрасно работает
Спасибо за помощь.
 
Добавлено:
Речь о xtraGrid.
У меня одна таблица вложенна в другую и у дочерней таблицы высота ячеек выставляется такая же, как у главной, хотя я убрал AutoRowHeight у обеих таблиц и выставил в ручную. Как уменьшить высоту ячеек в дочерней таблице?

Всего записей: 32 | Зарегистр. 14-12-2006 | Отправлено: 12:05 20-06-2007
raspe



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Сidmail
А в чем проблема. Есть мастер таблица, по ней строится mainView в гриде. Дальше жмешь retrieve details - получаешь уровни дочерних таблиц, привязываешь к уровням вьюшки, у вьюшек настраиваешь RowHeight. Все

Всего записей: 420 | Зарегистр. 22-07-2005 | Отправлено: 14:30 20-06-2007
idmail

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
У mainView есть поле, у которого высота 32, там imageComboBox с большими картинками. Дак вот теперь у вложенной таблицы высота стала тоже 32, как я уже сказал autoRowHeight выключено и высота выставлена ручками в 18, но она остается такой же

Всего записей: 32 | Зарегистр. 14-12-2006 | Отправлено: 15:03 20-06-2007
raspe



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
idmail
Как ты настроил высоту поля? Высота поля ставится по высоте строки, а она задается для каждой вьюшки отдельно! Чего-то ты не то делаешь

Всего записей: 420 | Зарегистр. 22-07-2005 | Отправлено: 15:53 20-06-2007
idmail

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Попробуй - проверь. У маин грида сделай поле, где картинки высокие есть. А у дочернего ты просто не сможешь сделать высоту меньше.
 
Если сможешь - делай скрин, я его распечатаю и съем.
 
PS. картинки у меня в imageComboBox'ах

Всего записей: 32 | Зарегистр. 14-12-2006 | Отправлено: 16:15 20-06-2007
raspe



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
idmail
Ну все теперь понял о чем ты. Это баг(((

Всего записей: 420 | Зарегистр. 22-07-2005 | Отправлено: 18:07 20-06-2007
idmail

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Да, печально, из-за этого немного кривовато выглядит.
А не подскажешь, как мне поменять конкретную ячейку в дочернем (это важно, потому-что в обычном - легко) гриде?
Ситуация такая: в дочернем гриде я сделал на редактирование колонки editButton (контрол с полем для ввода текста и кнопкой) хочу, чтоб по нажатию на кнопку открылась форма, я там что-то выбрал (радио группы) и какое-то значение записалось в эту ячейку.
 
Самое сложное - записать значение в нужную ячейку.
По нажатию на кнопку пытаюсь запомнить ячейку:

Код:
gridView3.FocusedRowHandle, gridView3.FocusedColumn

Почему-то оба значения возвращают пустоту, первое -99999, а второе null
Рекомендацию брал тут: http://www.devexpress.com/Help/?document=XtraGrid/CustomDocument731.htm&levelup=true
 
Не подскажешь как все же можно изменить в ручную значение ячейки?
 
PS. Ты пользуешься вломанной 6.3?

Всего записей: 32 | Зарегистр. 14-12-2006 | Отправлено: 18:53 20-06-2007
   

Страницы: 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 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Использование DevExpress 2
ShIvADeSt (07-02-2009 14:53): Продолжаем тут
http://forum.ru-board.com/topic.cgi?forum=33&topic=10123#1


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru