Problem z nie uaktualniającymi się polami C#
Witam serdecznie,
Troszkę zaciąłem się podczas pracy nad moją aplikacją i niestety nie wiem za bardzo, co zrobić dalej.
Opis klas:
[quote]
class AVLTreeNode
{
private AVLTreeNode parent;
private AVLTreeNode leftChild;
private AVLTreeNode rightChild;
private Point position;
public int X
{
get
{
return position.X;
}
set
{
position.X = value;
}
}
public int Y
{
get
{
return position.Y;
}
set
{
position.Y = value;
}
}
class IntAVLTreeNode : AVLTreeNode
{
}
[/quote]
oraz taką funkcję:
[quote]
public IntAVLTreeNode MoveSubtree(IntAVLTreeNode root, int width, int direction, MyPictureBox dA)
{
int x = (int)(width / Math.Pow(2.0, root.level));
int y = 40;
int interval;
if (direction == 0)
interval = x / y;
else
interval = -x / y;
root.X += interval;
root.Y -= 1;
if (root.LeftChild != null)
root.LeftChild = MoveSubtree((IntAVLTreeNode)root.LeftChild, width, direction, dA);
if (root.RightChild != null)
root.RightChild = MoveSubtree((IntAVLTreeNode)root.RightChild, width, direction, dA);
return root;
}
[/quote]
W założeniu funkcja ta ma przesuwać drzewo binarne o jakąś wartość obliczaną wewnątrz niej. Podczas debugowania wartości root.X i root.Y się zmieniają, ale niestety po wyjściu z funkcji powracają do stanu sprzed jej wywołania. Próbowałem już kilku różnych sposobów, a także wysyłałem to pytanie na inne forum dotyczące programowania w .NET, lecz nie pomogło. Być może ktoś z Was zna rozwiązanie tego problemu lub też może zaproponować zupełnie inne rozwiązanie?
Odpowiedzi: 0
Strona 0 / 0