Не загружаются сохранённые настройки PortfolioGrid из xml

Не загружаются сохранённые настройки PortfolioGrid из xml
Atom
4/13/2020
Дмитрий_


Здравствуйте.

Имею контрол
<xaml:PortfolioGrid x:Name="PortfolioGrid" />

Методы Save и Load


Реализация методов
Load(new XmlSerializer<SettingsStorage>().Deserialize($@"{_SETTINGS_DIR}/{_SETTINGS_FILE}"));
Save(new XmlSerializer<SettingsStorage>().Deserialize($@"{_SETTINGS_DIR}/{_SETTINGS_FILE}"));

C _testPortfolios всё работает
С PortfolioGrid и вариант с PortfolioGrid.Load(storage); не срабатывает

Файл сохранённых настроек historyEmulationConnectorSettings.xml

Tags:


Thanks:


1 2  >
Support

Avatar
Date: 4/13/2020
Reply


Добрый день

Какая-то ошибка или настройки не восстанавливаются?
Thanks:

Дмитрий_

Avatar
Date: 4/13/2020
Reply


Ошибки нет, не восстанавливаются настройки.
Thanks:

Support

Avatar
Date: 4/13/2020
Reply


Модифицированный пример работает. Кнопка Save после получения портфелей. Кнопка Load после изменения порядка колонок, ширина и т.д. Состояние восстанавливается.

Code
<Grid>
        <Grid.RowDefinitions>
            <RowDefinition Height="*" />
            <RowDefinition Height="Auto" />
        </Grid.RowDefinitions>
        
        <xaml:PortfolioGrid x:Name="PortfolioGrid" x:FieldModifier="public" />
    <StackPanel Grid.Row="1" Orientation="Horizontal">
        <Button x:Name="Save" Click="Save_Click" Content="Save"/>
        <Button x:Name="Load" Click="Load_Click" Content="Load"/>    
    </StackPanel>
    </Grid>

private SettingsStorage _s;

        private void Save_Click(object sender, System.Windows.RoutedEventArgs e)
        {
            _s = PortfolioGrid.Save();
        }

        private void Load_Click(object sender, System.Windows.RoutedEventArgs e)
        {
            PortfolioGrid.Load(_s);
        }
Thanks:

Дмитрий_

Avatar
Date: 4/14/2020
Reply


Не работает.

В демонстрационных целях создал мини-проект, в котором при открытии дочернего окна загружаются настройки PortfolioGrid, при добавлении портфеля в PortfolioGrid - сохраняются настройки.

PortfolioGridLoader.zip
Thanks:

Support

Avatar
Date: 4/14/2020
Reply


Добрый день

Попробуйте наш пример с последним API и модификацией выше. Работает ли у вас данный код?
Thanks:

Дмитрий_

Avatar
Date: 4/15/2020
Reply


Добрый день.

Тестировал с package id="StockSharp" version="4.4.16", если я правильно понимаю, то это последний API.
Всё равно не работает.

Возможно важно указать в описании, что я добавляю не реальный портфель, а тестовый.

Переделал проект под ваш пример и добавил две кнопки:
- Add (добавляет портфель)


- Remove (удаляет портфель)


Совершаю следующие действия:
Add, Add (два портфеля)
Save,
Remove, Remove (пустой PortfolioGrid)
Load (пустой PortfolioGrid) - не загружает то состояние, когда в PortfolioGrid было два портфеля.

PortfolioGridLoader.zip
Thanks:

Support

Avatar
Date: 4/15/2020
Reply


Последняя версия 5.0
Thanks:

Дмитрий_

Avatar
Date: 4/16/2020
Reply


Не работает.
Установил version="5.0.4" targetFramework="net48"
packages.config
packages.config 6 KB (445)
Thanks:

Support

Avatar
Date: 4/16/2020
Reply


Вы пробовали наш пример с модификацией выше?
Thanks:

Иван З.

Avatar
Date: 4/16/2020
Reply


Дмитрий Антипов
Добрый день.

Тестировал с package id="StockSharp" version="4.4.16", если я правильно понимаю, то это последний API.
Всё равно не работает.

Возможно важно указать в описании, что я добавляю не реальный портфель, а тестовый.

Переделал проект под ваш пример и добавил две кнопки:
- Add (добавляет портфель)


- Remove (удаляет портфель)


Совершаю следующие действия:
Add, Add (два портфеля)
Save,
Remove, Remove (пустой PortfolioGrid)
Load (пустой PortfolioGrid) - не загружает то состояние, когда в PortfolioGrid было два портфеля.

PortfolioGridLoader.zip

Попробуйте декомпилировать PortfolioGrid и поймете, что он не сохраняет портфели. И наверное не должен графический элемент за это отвечать.
Thanks:
1 2  >

Attach files by dragging & dropping, , or pasting from the clipboard.

loading
clippy