簡體   English   中英

組合框項目將不等於構造函數c#

[英]Combo Box Item Won't Equal Constructor c#

我有以下代碼:

foreach (TrainerFileHandler trainer in mTrainers)
    {

        if (cboTrainer.SelectedItem == (trainer.First + " " + trainer.Last))
        {
            trainerID = trainer.ID;
            break;
        }
    }

TrainerFileHandler是我的構造函數,它具有First,Last和ID的屬性。 現在,我遍歷了代碼,看到我在組合框中選擇的項目與第一個+“” +最后一個完全相同,但是仍然表示它們彼此不相等。

我還有其他非常相似的東西:

foreach (ExerciseFileHandler exercise in mExercise)
    {
        if (cboExercise.SelectedItem == exercise.PlanName)
        {
            planID = exercise.ID;
            break;
        }
    }

現在,一個完美的作品。 我嘗試這樣做:

foreach (TrainerFileHandler trainer in mTrainers)
    {
        string first = trainer.First;
        string last = trainer.Last;
        string full = first + " " + last;

        if (cboTrainer.SelectedItem == last)
        {
            trainerID = trainer.ID;
            break;
        }
    }

但這也不起作用。 有人知道為什么這行不通嗎? 可能需要注意的是,在兩個if語句下,即使一個有效,一個無效,它說“可能的意外引用比較;要進行值比較,請在左側將類型轉換為'string'”。 我嘗試將左側轉換為字符串,但沒有幫助。

@MPelletier提供了正確答案作為評論

我需要使用String.Equals()代替==。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM