Private Void Tree_afterexpand ( Object Sender, treevieweventargs E)
{
Int Fileid = Int . Parse (listitem) comboxfile. items [comboxfile. selectedindex]). Id );
Backgroundworker BW = New Backgroundworker ();
Bw. dowork + = New Doworkeventhandler (bw_dowork );
Bw. runworkercompleted + = New Runworkercompletedeventhandler (bw_runworkercompleted );
Object[] Oargs =New Object[] {E. node, fileid };
Bw. runworkerasync (oargs );
Bomtree. selectednode = E. node;
}
Private VoidBw_dowork (ObjectSender, doworkeventargs E)
{
Object [] Oargs = E. Argument As Object [];
Treenode Tn = oargs [ 0 ] As Treenode;
Int Fileid = Int . Parse (oargs [ 1 ]. Tostring ());
Dataaccess da = New Dataaccess ();
Datatable dtchildren = Null ;
Datatable dgvlist = Null ;
If (TN. Tag! = Null )
{
Dtchildren = New Datatable ();
Dtchildren = getdata ();
Dgvlist = New Datatable ();
Dgvlist = getdata ();
}
Else
{
Dtchildren = New Datatable ();
Dtchildren = da. searchchildren (fileid, TN. Text + " % " );
}
E. Result =New Object[] {Tn, dtchildren, dgvlist };
}
Private Void Bw_runworkercompleted ( Object Sender, runworkercompletedeventargs E)
{
Object [] Oresult = E. Result As Object [];
Treenode tnodeparent = oresult [ 0 ] As Treenode;
Datatable dtchildren = oresult [ 1 ] As Datatable;
Datatable dgvlist = oresult [ 2 ] As Datatable;
Arraylist arr = New Arraylist ();
// Dosomething
}