﻿<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type='text/css' href='https://stocksharp.com/css/style.css'?>
<?xml-stylesheet type='text/css' href='https://stocksharp.com/css/bbeditor.css'?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title type="html">Не загружаются сохранённые настройки PortfolioGrid из xml</title>
  <id>~/topic/11618/ne-zagruzhayutsya-sohranyonnye-nastroiki-portfoliogrid-iz-xml/</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-06-14T03:19:24Z</updated>
  <logo>https://stocksharp.com/images/logo.png</logo>
  <link href="https://stocksharp.com/handlers/atom.ashx?category=topic&amp;id=11618" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.com/posts/m/49971/</id>
    <title type="text">Support: Вы пробовали наш пример с модификацией выше? Пробывал, я проект написал (прикреплен выше) в...</title>
    <published>2020-04-16T18:53:08Z</published>
    <updated>2020-04-16T18:53:08Z</updated>
    <author>
      <name>Дмитрий_</name>
      <uri>https://stocksharp.com/users/62269/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(49968)" rel="nofollow" target="_blank"&gt;Support&lt;/a&gt;:&lt;/strong&gt;
Вы пробовали наш пример с модификацией выше?
Пробывал, я проект написал (прикреплен выше) в котором используются данные методы. Посмотрите его, может я чего-то пропустил и не учитываю.&lt;/p&gt;
&lt;/blockquote&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/49970/</id>
    <title type="text">Иван З.: Попробуйте декомпилировать PortfolioGrid и поймете, что он не сохраняет портфели. И наверно...</title>
    <published>2020-04-16T18:45:10Z</published>
    <updated>2020-04-16T18:45:10Z</updated>
    <author>
      <name>Дмитрий_</name>
      <uri>https://stocksharp.com/users/62269/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(49969)" rel="nofollow" target="_blank"&gt;Иван З.&lt;/a&gt;:&lt;/strong&gt;
Попробуйте декомпилировать PortfolioGrid и поймете, что он не сохраняет портфели. И наверное не должен графический элемент за это отвечать.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Спасибо за вариант. Данный вопросом я хочу найти ответ на смежные вопросы.
Например в Shell в файле PortfolioGridControl используются методы
PortfolioGrid.Load(storage);
PortfolioGrid.Save(storage);
и они работают.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/49969/</id>
    <title type="text">Дмитрий Антипов: Добрый день. Тестировал с package id=&amp;quot;StockSharp&amp;quot; version=&amp;quot;4.4.16&amp;quot;, если я правильн...</title>
    <published>2020-04-16T17:42:09Z</published>
    <updated>2020-04-16T17:42:09Z</updated>
    <author>
      <name>Иван З.</name>
      <uri>https://stocksharp.com/users/6502/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(49953)" rel="nofollow" target="_blank"&gt;Дмитрий Антипов&lt;/a&gt;:&lt;/strong&gt;
Добрый день.&lt;/p&gt;
&lt;p&gt;Тестировал с package id=&amp;quot;StockSharp&amp;quot; version=&amp;quot;4.4.16&amp;quot;, если я правильно понимаю, то это последний API.
Всё равно не работает.&lt;/p&gt;
&lt;p&gt;Возможно важно указать в описании, что я добавляю не реальный портфель, а тестовый.&lt;/p&gt;
&lt;p&gt;Переделал проект под ваш пример и добавил две кнопки:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Add (добавляет портфель)&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="spoiler"&gt;&lt;/div&gt;&lt;/blockquote&gt;
&lt;p&gt;var newPortfolio = new Portfolio() { Name = &amp;quot;Test_&amp;quot; + _portfolioNumber++, BeginValue = 1000000 };&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;&lt;code&gt;        _pList.Add(newPortfolio);
        PortfolioGrid.Portfolios.Add(newPortfolio);
&lt;/code&gt;&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;div&gt;
&lt;blockquote&gt;
&lt;ul&gt;
&lt;li&gt;Remove (удаляет портфель)&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="spoiler"&gt;&lt;/div&gt;&lt;/blockquote&gt;
&lt;p&gt;PortfolioGrid.Portfolios.Remove(_pList.First());&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;&lt;code&gt;        _pList.Remove(_pList.First());
&lt;/code&gt;&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;Совершаю следующие действия:
Add, Add (два портфеля)
Save,
Remove, Remove (пустой PortfolioGrid)
Load (пустой PortfolioGrid) - не загружает то состояние, когда в PortfolioGrid было два портфеля.&lt;/p&gt;
&lt;p&gt;&lt;a href="/file/112417/PortfolioGridLoader.zip"&gt;PortfolioGridLoader.zip&lt;/a&gt;
Попробуйте декомпилировать PortfolioGrid и поймете, что он не сохраняет портфели. И наверное не должен графический элемент за это отвечать.&lt;/p&gt;
&lt;/blockquote&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/49968/</id>
    <title type="text">Вы пробовали наш пример с модификацией выше? </title>
    <published>2020-04-16T15:58:25Z</published>
    <updated>2020-04-16T15:58:25Z</updated>
    <author>
      <name>Support</name>
      <uri>https://stocksharp.com/users/97869/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Вы пробовали наш пример с модификацией выше?&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/49958/</id>
    <title type="text">Не работает. Установил version=&amp;quot;5.0.4&amp;quot; targetFramework=&amp;quot;net48&amp;quot; packages.config </title>
    <published>2020-04-16T07:44:15Z</published>
    <updated>2020-04-16T07:52:37Z</updated>
    <author>
      <name>Дмитрий_</name>
      <uri>https://stocksharp.com/users/62269/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Не работает.
Установил version=&amp;quot;5.0.4&amp;quot; targetFramework=&amp;quot;net48&amp;quot;
&lt;a href="/file/112480/packages.config"&gt;packages.config&lt;/a&gt;&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/49956/</id>
    <title type="text">Последняя версия 5.0 </title>
    <published>2020-04-15T20:30:31Z</published>
    <updated>2020-04-15T20:30:31Z</updated>
    <author>
      <name>Support</name>
      <uri>https://stocksharp.com/users/97869/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Последняя версия 5.0&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/49953/</id>
    <title type="text">Добрый день. Тестировал с package id=&amp;quot;StockSharp&amp;quot; version=&amp;quot;4.4.16&amp;quot;, если я правильно понимаю, то это...</title>
    <published>2020-04-15T00:12:55Z</published>
    <updated>2020-04-15T00:12:55Z</updated>
    <author>
      <name>Дмитрий_</name>
      <uri>https://stocksharp.com/users/62269/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Добрый день.&lt;/p&gt;
&lt;p&gt;Тестировал с package id=&amp;quot;StockSharp&amp;quot; version=&amp;quot;4.4.16&amp;quot;, если я правильно понимаю, то это последний API.
Всё равно не работает.&lt;/p&gt;
&lt;p&gt;Возможно важно указать в описании, что я добавляю не реальный портфель, а тестовый.&lt;/p&gt;
&lt;p&gt;Переделал проект под ваш пример и добавил две кнопки:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Add (добавляет портфель)&lt;/li&gt;
&lt;/ul&gt;
&lt;details&gt;&lt;summary&gt;var newPortfolio = new Portfolio() { Name = &amp;quot;Test_&amp;quot; + _portfolioNumber++, BeginValue = 1000000 };
_pList.Add(newPortfolio);
PortfolioGrid.Portfolios.Add(newPortfolio);&lt;/summary&gt;
&lt;/details&gt;
&lt;ul&gt;
&lt;li&gt;Remove (удаляет портфель)&lt;/li&gt;
&lt;/ul&gt;
&lt;details&gt;&lt;summary&gt;PortfolioGrid.Portfolios.Remove(_pList.First());
_pList.Remove(_pList.First());&lt;/summary&gt;
&lt;/details&gt;
&lt;p&gt;Совершаю следующие действия:
Add, Add (два портфеля)
Save,
Remove, Remove (пустой PortfolioGrid)
Load (пустой PortfolioGrid) - не загружает то состояние, когда в PortfolioGrid было два портфеля.&lt;/p&gt;
&lt;p&gt;&lt;a href="/file/112417/PortfolioGridLoader.zip"&gt;PortfolioGridLoader.zip&lt;/a&gt;&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/49946/</id>
    <title type="text">Добрый день Попробуйте наш пример с последним API и модификацией выше. Работает ли у вас данный код?...</title>
    <published>2020-04-14T15:06:33Z</published>
    <updated>2020-04-14T15:06:33Z</updated>
    <author>
      <name>Support</name>
      <uri>https://stocksharp.com/users/97869/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Добрый день&lt;/p&gt;
&lt;p&gt;Попробуйте наш пример с последним API и модификацией выше. Работает ли у вас данный код?&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/49940/</id>
    <title type="text">Не работает. В демонстрационных целях создал мини-проект, в котором при открытии дочернего окна загр...</title>
    <published>2020-04-14T00:09:44Z</published>
    <updated>2020-04-14T00:13:46Z</updated>
    <author>
      <name>Дмитрий_</name>
      <uri>https://stocksharp.com/users/62269/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Не работает.&lt;/p&gt;
&lt;p&gt;В демонстрационных целях создал мини-проект, в котором при открытии дочернего окна загружаются настройки PortfolioGrid, при добавлении портфеля в PortfolioGrid - сохраняются настройки.&lt;/p&gt;
&lt;p&gt;&lt;a href="/file/112399/PortfolioGridLoader.zip"&gt;PortfolioGridLoader.zip&lt;/a&gt;&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/49938/</id>
    <title type="text">Модифицированный пример работает. Кнопка Save после получения портфелей. Кнопка Load после изменения...</title>
    <published>2020-04-13T18:37:05Z</published>
    <updated>2020-04-13T18:37:05Z</updated>
    <author>
      <name>Support</name>
      <uri>https://stocksharp.com/users/97869/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Модифицированный пример работает. Кнопка Save после получения портфелей. Кнопка Load после изменения порядка колонок, ширина и т.д. Состояние восстанавливается.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;&amp;lt;Grid&amp;gt;
		&amp;lt;Grid.RowDefinitions&amp;gt;
			&amp;lt;RowDefinition Height=&amp;quot;*&amp;quot; /&amp;gt;
			&amp;lt;RowDefinition Height=&amp;quot;Auto&amp;quot; /&amp;gt;
		&amp;lt;/Grid.RowDefinitions&amp;gt;
		
		&amp;lt;xaml:PortfolioGrid x:Name=&amp;quot;PortfolioGrid&amp;quot; x:FieldModifier=&amp;quot;public&amp;quot; /&amp;gt;
	&amp;lt;StackPanel Grid.Row=&amp;quot;1&amp;quot; Orientation=&amp;quot;Horizontal&amp;quot;&amp;gt;
		&amp;lt;Button x:Name=&amp;quot;Save&amp;quot; Click=&amp;quot;Save_Click&amp;quot; Content=&amp;quot;Save&amp;quot;/&amp;gt;
		&amp;lt;Button x:Name=&amp;quot;Load&amp;quot; Click=&amp;quot;Load_Click&amp;quot; Content=&amp;quot;Load&amp;quot;/&amp;gt;	
	&amp;lt;/StackPanel&amp;gt;
	&amp;lt;/Grid&amp;gt;

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);
		}
&lt;/code&gt;&lt;/pre&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/49937/</id>
    <title type="text">Ошибки нет, не восстанавливаются настройки. </title>
    <published>2020-04-13T15:20:24Z</published>
    <updated>2020-04-13T15:20:24Z</updated>
    <author>
      <name>Дмитрий_</name>
      <uri>https://stocksharp.com/users/62269/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Ошибки нет, не восстанавливаются настройки.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/49936/</id>
    <title type="text">Добрый день Какая-то ошибка или настройки не восстанавливаются? </title>
    <published>2020-04-13T15:12:09Z</published>
    <updated>2020-04-13T15:12:09Z</updated>
    <author>
      <name>Support</name>
      <uri>https://stocksharp.com/users/97869/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Добрый день&lt;/p&gt;
&lt;p&gt;Какая-то ошибка или настройки не восстанавливаются?&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/49921/</id>
    <title type="text">Здравствуйте. Имею контрол Методы Save и Load public void Load(SettingsStorage storage) { if (storag...</title>
    <published>2020-04-13T05:41:17Z</published>
    <updated>2020-04-13T05:41:41Z</updated>
    <author>
      <name>Дмитрий_</name>
      <uri>https://stocksharp.com/users/62269/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Здравствуйте.&lt;/p&gt;
&lt;p&gt;Имею контрол
&amp;lt;xaml:PortfolioGrid x:Name=&amp;quot;PortfolioGrid&amp;quot; /&amp;gt;&lt;/p&gt;
&lt;p&gt;Методы Save и Load&lt;/p&gt;
&lt;div class="spoiler"&gt;&lt;p&gt;public void Load(SettingsStorage storage)
{
if (storage != null)
{
if (storage.Contains(nameof(_testPortfolios)))
if (storage.Contains(nameof(PortfolioGrid)))
{
PortfolioGrid.Load(storage.GetValue&lt;SettingsStorage&gt;(nameof(PortfolioGrid)));
}
}
else
{
// TODO: add log
}
}&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;    public void Save(SettingsStorage storage)
    {
        if (storage != null)
        {
            storage.SetValue(nameof(_testPortfolios), _testPortfolios);
            storage.SetValue(nameof(PortfolioGrid), PortfolioGrid.Save());

            new XmlSerializer&amp;lt;SettingsStorage&amp;gt;().Serialize(storage, $@&amp;quot;{_SETTINGS_DIR}/{_SETTINGS_FILE}&amp;quot;);
        }
        else
        {
            // TODO: add log
        }
    }
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p _SETTINGS_DIR="" _SETTINGS_FILE=""&gt;Реализация методов
Load(new XmlSerializer&lt;SettingsStorage&gt;().Deserialize($@&amp;quot;/&amp;quot;));
Save(new XmlSerializer&lt;SettingsStorage&gt;().Deserialize($@&amp;quot;/&amp;quot;));&lt;/p&gt;
&lt;p&gt;C _testPortfolios всё работает
С PortfolioGrid и вариант с PortfolioGrid.Load(storage); не срабатывает&lt;/p&gt;
&lt;p&gt;Файл сохранённых настроек &lt;a href="/file/112281/historyEmulationConnectorSettings.xml"&gt;historyEmulationConnectorSettings.xml&lt;/a&gt;&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
</feed>