我一直在努力嘗試理解ArrayList
,但我遇到了一個問題,其中包含我的搜索功能的最後部分。以新表格加載搜索結果
我有一個數組列表,設置爲從StreamReader
獲取數據。數據由與團隊有關的衆多屬性組成,例如他們的名字和他們徽標的圖像路徑。
然後我創建了一個搜索,掃描整個數組列表,查看用戶通過文本框輸入的特定字符串。
然後我創建了一個if語句來打開一個新窗體,如果該搜索返回true。
我想新的表格根據搜索的數據加載團隊的每個屬性。例如,如果我搜索「利物浦」,它會拿出經理姓名,體育場名稱以及新形式的搜索名稱。我不知道該怎麼做。
我真的可以想到的唯一工具是load.event
過程,但我找不到有關將其鏈接到數組列表的很多信息。
private void btn_Search_Click(object sender, EventArgs e)
{
foreach (Object obj in allTeams)
{
Team = (Team)obj;
if (team.teamName.ToUpper() == nameToMatch.ToUpper()) //case insensitive search.
{
FormTeam frmTeam = new FormTeam(Team); //windows form that displays team info.
frmTeam.Visible = true;
break;
}
}
}
上面是我的搜索功能。 (我沒有使用List<T>
,因爲它要求所有東西都必須存儲在ArrayList
中。)
是我想實現的目標嗎?如果是的話如何?
對不起,延遲迴復。我仍然試圖解決這個問題。我沒有使用LINQ,因爲我對c#沒有那麼自信。您在第1部分中演示的方法。那不僅僅是僅顯示團隊名稱嗎?我只想從一個搜索值中顯示出團隊的每個屬性(經理,體育場)。 – zac
是的,你必須實現所有你需要的,我看到你的構造函數接受整個teamobject。我會解決這個問題。 – CSharpie
這仍然讓我感到困惑。澄清第1部分意味着要返回搜索結果,如果真的啓動新的表單。然後將第二部分的代碼設置爲新創建表單的第一個方法。由於構造函數接受整個對象,我將每個值都分配給例如'teamName.Text = team.TeamName;'到類似文本框或標籤的對象?很抱歉,因爲我知道這樣做似乎很乏味。 – zac