Member 12763843 Ответов: 3

Как сериализовать элемент управления древовидным представлением в C#


namespace TreeViewControl
{
    [Serializable]
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            string n = textBox1.Text;
            if (treeView1.SelectedNode == null)
            {
                treeView1.Nodes.Add(n, n);
            }
            else
            {
                treeView1.SelectedNode.Nodes.Add(n, n);
            }
        }
    }
  }

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

Что я уже пробовал:

я попытался экспортировать в xml файл и все другие подходы моего уровня

Member 12763843

кто-нибудь может мне помочь??

3 Ответов

Рейтинг:
2

Maciej Los

Как утверждает MSDN:

Цитата:
Сериализация-это процесс преобразования объекта в поток байтов для хранения объекта или передачи его в память, базу данных или файл. Его основная цель-сохранить состояние объекта, чтобы иметь возможность воссоздать его при необходимости. Обратный процесс называется десериализацией.
источник: Сериализация (C# )[^]

Это означает, что вы можете сериализовать только объекты (данные), но не элементы управления!

В зависимости от того, чего вы хотите достичь, вам может понадобиться прочитать это:
Сериализация и десериализация XML: Часть 1[^]
Сериализация и десериализация XML: Часть 2[^]
Полный образец сериализации и десериализации пользовательских коллекций классов[^]
Сериализация иерархии "родитель-потомки" в XML[^]


Рейтинг:
1

F-ES Sitecore

Гугл[^]

Если у вас есть конкретная проблема с конкретным подходом, то обновите свой вопрос соответствующим образом.


Рейтинг:
0

Dave Kreskowiak

Формы и элементы управления не сериализуются, просто поместив на них атрибут [Serializable].

Вы должны написать код, чтобы захватить нужные данные из элементов управления и сериализовать их самостоятельно. Google для "сериализации treeview C#" для множества примеров.


Maciej Los

5ед!