c# - Why treeview nodes imageindex property is not saved in serializing? -
i'm serializing treenode using function :
public static void savetree(treeview tree, string filename) { using (stream file = file.open(filename, filemode.create)) { binaryformatter bf = new binaryformatter(); bf.serialize(file, tree.nodes.cast<treenode>().tolist()); } } when deserialize using function :
public static treeview loadtree(string filename) { treeview tree = new treeview(); using (stream file = file.open(filename, filemode.open)) { binaryformatter bf = new binaryformatter(); object obj = bf.deserialize(file); treenode[] nodelist = (obj ienumerable<treenode>).toarray(); tree.nodes.addrange(nodelist); } return tree; } i didn't nodes imageindex value -1 nodes imageindex !
why ?
seems bug.
if set name property of each image in imagelist, , use imagekey , selectedimagekey properties nodes instead of imageindex , selectedimageindex, serialization work.
in code though, don't forget apply imagelist control treeview:
public static treeview loadtree(string filename, imagelist imagelist) { treeview tree = new treeview(); tree.imagelist = imagelist; ... }
Comments
Post a Comment