|
Добавить параметр Tab в List.
|
|||
---|---|---|---|
#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.
Каждый таб это UserControl с набором контролов и методов. И там есть кнопка загрузки файла и при загрузке файла я хочу запомнить этот файл в листе tabs. Для этого я передаю в UserControl ссылку на tabs Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
И при открытии файла хочу занести имя файла в tabs Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23.
Но this.Tag почему то null и я вываливаюсь в исключение. Как можно апдейтировать лист из UserControl? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.07.2019, 15:02 |
|
Добавить параметр Tab в List.
|
|||
---|---|---|---|
#18+
а почему this.Tag не должно быть пустым? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.07.2019, 15:13 |
|
Добавить параметр Tab в List.
|
|||
---|---|---|---|
#18+
Супер_Пава почему this.Tag не должно быть пустым? потому что таб создан, это ведь истанс UserControl. как я понимаю buttonParamsLoad_Click это не статический метод, он в каждом инстансе свой. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.07.2019, 15:24 |
|
Добавить параметр Tab в List.
|
|||
---|---|---|---|
#18+
this - это внутри UserControlParams? В какой момент у Вас Tag проставляется? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.07.2019, 15:33 |
|
Добавить параметр Tab в List.
|
|||
---|---|---|---|
#18+
Супер_Павthis - это внутри UserControlParams? В какой момент у Вас Tag проставляется? Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
таб создан. Tag его инициализирован. теперь я в этом табе вызываю buttonParamsLoad_Click. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.07.2019, 15:44 |
|
Добавить параметр Tab в List.
|
|||
---|---|---|---|
#18+
заметил ошибку - я инициализирую Tag таба, а надо инициализировать Tag юзер контрола. добавил в AddParamTab Код: c# 1.
но он все равно null. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.07.2019, 17:19 |
|
Добавить параметр Tab в List.
|
|||
---|---|---|---|
#18+
jenya7Я програмно создаю и удаляю табы в таб контрол. Одновременно с созданием таба я заношу параметры таба в список табов, чтоб при новом запуске создать форму с табами которые я запомнил и занес в файл. Код: 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.
Каждый таб это UserControl с набором контролов и методов. И там есть кнопка загрузки файла и при загрузке файла я хочу запомнить этот файл в листе tabs. Для этого я передаю в UserControl ссылку на tabs Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
И при открытии файла хочу занести имя файла в tabs Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23.
Но this.Tag почему то null и я вываливаюсь в исключение. Как можно апдейтировать лист из UserControl? Код очень сложный для чтения, почему не используете соглашения об наименованиях Microsoft C#, религия не позволяет? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2019, 11:52 |
|
Добавить параметр Tab в List.
|
|||
---|---|---|---|
#18+
pationКод очень сложный для чтения, почему не используете соглашения об наименованиях Microsoft C#, религия не позволяет? я думал я ко всему готов, ничем меня не шокируешь. как я ошибался. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.07.2019, 18:38 |
|
Добавить параметр Tab в List.
|
|||
---|---|---|---|
#18+
Что конкретно делаешь? В свое время я чего только с этими табами ни делал. Привязывал набор вкладок к DataTable, к коллекции объектов, сохранял это и в базе данных и в настройках приложения. Т.е. содержимое набора вкладок редактировалось в XML. Напиши что конкретно пытаешься сделать, может быть помогу. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.07.2019, 12:11 |
|
Добавить параметр Tab в List.
|
|||
---|---|---|---|
#18+
WorobjoffЧто конкретно делаешь? В свое время я чего только с этими табами ни делал. Привязывал набор вкладок к DataTable, к коллекции объектов, сохранял это и в базе данных и в настройках приложения. Т.е. содержимое набора вкладок редактировалось в XML. Напиши что конкретно пытаешься сделать, может быть помогу. хочу открыть несколько табов, в табах открыть файл, который заполнит датагрид или ричтекстбокс в зависимости какой тип таба открыт. и потом хочу запомнить настройки в файле чтоб при поднятии програмы табы добавились и заполнили контролы автоматически. единственно что не могу осилить - запомнить путь к файлу в уже созданном инстансе параметров таба. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.07.2019, 13:00 |
|
Добавить параметр Tab в List.
|
|||
---|---|---|---|
#18+
jenya7WorobjoffЧто конкретно делаешь? В свое время я чего только с этими табами ни делал. Привязывал набор вкладок к DataTable, к коллекции объектов, сохранял это и в базе данных и в настройках приложения. Т.е. содержимое набора вкладок редактировалось в XML. Напиши что конкретно пытаешься сделать, может быть помогу. хочу открыть несколько табов, в табах открыть файл, который заполнит датагрид или ричтекстбокс в зависимости какой тип таба открыт. и потом хочу запомнить настройки в файле чтоб при поднятии програмы табы добавились и заполнили контролы автоматически. единственно что не могу осилить - запомнить путь к файлу в уже созданном инстансе параметров таба. Тут несколько способов есть. Два основных: 1. Структура данных-описание табов находится "снаружи" табов. 2. Эта структура находится "внутри", т.е. описатель каждого таба хранится в свойстве Tag. Ты пытаешься сделать частный случай 2. Т.е. строку хочешь сохранить в свойстве Tag. Практика с самого начала ограниченная. Создай класс, добавь в него все нужные тебе свойства и храни его экземпляр в Таге. Но лучше структуру данных держать "снаружи", и ссылка на таб хранить в экземпляре класса-описателя. Умеешь сериализовать классы в XML? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.07.2019, 13:08 |
|
Добавить параметр Tab в List.
|
|||
---|---|---|---|
#18+
Worobjoffjenya7пропущено... хочу открыть несколько табов, в табах открыть файл, который заполнит датагрид или ричтекстбокс в зависимости какой тип таба открыт. и потом хочу запомнить настройки в файле чтоб при поднятии програмы табы добавились и заполнили контролы автоматически. единственно что не могу осилить - запомнить путь к файлу в уже созданном инстансе параметров таба. Тут несколько способов есть. Два основных: 1. Структура данных-описание табов находится "снаружи" табов. 2. Эта структура находится "внутри", т.е. описатель каждого таба хранится в свойстве Tag. Ты пытаешься сделать частный случай 2. Т.е. строку хочешь сохранить в свойстве Tag. Практика с самого начала ограниченная. Создай класс, добавь в него все нужные тебе свойства и храни его экземпляр в Таге. Но лучше структуру данных держать "снаружи", и ссылка на таб хранить в экземпляре класса-описателя. Умеешь сериализовать классы в XML? я создал класс содержащий информацию о табе Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
при добавлении таба добавляю новый айтем в лист Код: c# 1. 2. 3. 4. 5.
айтем создан но свойство File его пустое - я еще не зашел в таб и не открыл файл. теперь я захожу в новый созданный таб - открываю файл - и в этот момент я хочу сохранить путь к файлу в свойстве File - того айтема который я создал при создании таба. то есть как то надо привязать тот инстанс TabParams tab_param к вновь созданному табу. А лист tabs - я сохраняю в XML файле. И при поднятии програмы - открываю XML файл парсирую его и на основе данных популяризирую табы. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.07.2019, 13:31 |
|
Добавить параметр Tab в List.
|
|||
---|---|---|---|
#18+
Куда складываешь экземпляры TabParams? В каком поле это все хранишь? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.07.2019, 14:11 |
|
Добавить параметр Tab в List.
|
|||
---|---|---|---|
#18+
Должно быть примерно так: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22.
... |
|||
:
Нравится:
Не нравится:
|
|||
30.07.2019, 14:23 |
|
Добавить параметр Tab в List.
|
|||
---|---|---|---|
#18+
WorobjoffДолжно быть примерно так: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22.
но связывание данных не произойдет автоматически. как привязать TabInfo-File к ивенту открытия файла? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.07.2019, 14:57 |
|
Добавить параметр Tab в List.
|
|||
---|---|---|---|
#18+
jenya7но связывание данных не произойдет автоматически. как привязать TabInfo-File к ивенту открытия файла? Конечно не произойдет. Чтобы написать привязку к коллекции объектов надо серьезно потрудиться. Сделай вариант попроще. По LoadSettings грузишь весь XML По SaveSettings сохраняешь его. Вызываешь SaveSettings после каждого изменения состава вкладок. В AddTab пишешь код который добавит вкладку (TabPage в TabControl). В LoadSettings, после того как Settings.Tabs загружены из XML, сначала очищаешь набор вкладок, а потом вызываешь AddTab для каждого TabInfo в коллекции. Пользователь добавляет новый файл - создаешь объект TabInfo с заполненными полями, передаешь его в AddTab - вкладка появляется. К TabInfo можно добавить ссылку на саму вкладку, пометив её атрибутом что не надо сохранять в XML. Как-то так Код: c# 1. 2. 3. 4. 5. 6. 7. 8.
... |
|||
:
Нравится:
Не нравится:
|
|||
30.07.2019, 15:13 |
|
|
start [/forum/topic.php?fid=20&msg=39842906&tid=1398859]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
57ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
others: | 253ms |
total: | 405ms |
0 / 0 |