我目前正在使用在程序開始時加載的項目列表。我試圖確定每個項目的位置。所以我有按鈕First
它顯示第一個項目(當前),Next
其中第一個(Current.Next)後顯示以下項目,Last
應該顯示最後一個itme,但它根本不顯示任何內容。在按鈕點擊名爲labelSpecificTree
的標籤後,顯示結果。我試圖在Last
按鈕點擊線Current = Trees.Last;
中設置一箇中斷來查看結果,但沒有給我任何具體的細節。我如何通過標籤顯示列表中的最後一項?在列表中查找項目的位置 - 首先,最後一個
代碼
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
ListOfTrees Trees = new ListOfTrees();
FruitTrees Tree;
FruitTrees Current;
double Total;
public class ListOfTrees
{
private int size;
public ListOfTrees()
{
size = 0;
}
public int Count
{
get { return size; }
}
public FruitTrees First;
public FruitTrees Last;
public int Add_Initialize(FruitTrees NewItem)
{
NewItem.Next = First;
First = NewItem;
Last = First.Next;
if (Last == null)
{
Last = First;
}
return size++;
}
public int Add(FruitTrees newItem)
{
if (First == null)
return Add_Initialize(newItem);
FruitTrees item = First;
while (item.Next != null)
{
item = item.Next;
}
item.Next = newItem;
return size++;
}
}
public void Clear()
{
textBoxType.Clear();
textBoxHeight.Clear();
textBoxPrice.Clear();
textBoxStock.Clear();
}
public void Current_Tree()
{
Current = Trees.First;
labelSpecificTree.Text = Current.Type.ToString();
}
private void Form1_Load_1(object sender, EventArgs e)
{
Tree = new FruitTrees();
Tree.Stock = 15;
Tree.Type = "Pear";
Tree.Price = 49.99;
Tree.Height = 20;
Total += Tree.Price * Tree.Stock;
Trees.Add(Tree);
ShowTrees();
Current_Tree();
}
private void buttonLast_Click(object sender, EventArgs e)
{
Current = Trees.Last;
labelSpecificTree.Text = Current.Type.ToString();
}
}
}
你已經錯過了一些代碼... – JleruOHeP
只是要清楚,你會發現有一個內置的LinkedList的''類型,對不對?這有點重新發明輪子。 –
itsme86
@JleruOHeP對不起,我添加了其餘必要的代碼。 – techAddict82