Re: Теги на TreeNode
От: Chardex Россия  
Дата: 02.06.05 11:15
Оценка:
Здравствуйте, losnaca, Вы писали:

L>к каждому TreeNode прилагается тег который берет данные из таблицы базы данных и присваивает их TreeNode:



L>public class InfoTag
L>    {
L>        public ObjectTYPE ObjectTYPE;    //тип объекта (перечисление)        
L>                public int L1;                //первый ключ
L>        public int L2;                  //второй ключ
L>        public string NAME;             //название префикса                    
L>                public string Prefix;           //префикс
L>            public InfoTag(){}
L>        }


L>так вот, в первом уровне TreeView мне нужны значения только ObjectTYPE, int L1, string NAME.

L>Во втором уровне нужно то же самое, но только вместо int L1 нужно int L2.
L>В процедуре, которая строит TreeView например, для первого уровня я делаю так:
Вообще-то я не очень понял. У вас в InfoTag пустой констркутор. Без параметров.


L>foreach(DataRow L1_Row in AddPrefix.Tables["L1_ZONE"].Rows)
L>    {
L>        TreeNode Node_L1 = new TreeNode(L1_Row["NAME"].ToString());
L>        Node_L1.Tag = new InfoTag( // а тут уже с параметрами!
L>        ObjectTYPE.ZONE,
L>        (int)L1_Row["L1"],
L>        (string)L1_Row["NAME"]);
                    
L>        treeView1.Nodes.Add( Node_L1 );
L>        }


L>компилятор мне выдает ошибку и говорит что нужно в Node_L1.Tag перечислить всех членов класса InfoTag.

L>Подскажите пожалуйста, синтаксис присвоения нулевых значений int L2, string Prefix в Node_L1.Tag.

L>заранее благодарна


И что мешает создать объект констрктором без параметров и инициализировать только нужные свойства? Или создать два конструктор для первого и второго уровня нод?!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.