List<MyClass> в ComboBox: SelectedIndex всегда -1, почему?
От: J-Pro Молдова  
Дата: 01.06.09 13:11
Оценка:
Всем добрый день!

Столкнулся с проблемой, не могу понять в чём дело.

Имеется такая структура:
public interface IMyBaseClass
{

}

public class MyBaseClass : IMyBaseClass
{
   protected DataRow dataRow = null;

   public MyBaseClass() { }

   public MyBaseClass(DataRow dr)
   {
      this.dataRow = dr;
   }

   protected T GetFieldValue<T>(String fieldName)
   {
     ...
   }

   protected void SetFieldValue<T>(String fieldName, T val)
   {
     ...
   }
}

public class MyClass : MyBaseClass
{
   public string Note1
   {
       get { return GetFieldValue<string>(COLNAME_NOTE1); }
       set { SetFieldValue<string>(COLNAME_NOTE1, value); }
   }

   public override String ToString()
   {
       return Note1;
   }
}


Далее: где-то есть метод, который возвращает мне List<MyClass> myClassList. Так же есть у меня ComboBox: cBox. Что я делаю:
cBox.DataSource = myClassList;

В этот момент вызывается хэндлер cBox_SelectedIndexChanged, НО при этом cBox.SelectedIndex равен -1. При том, что список элементов приходит нормальный(3 элемента, нормально инициализированных).

Я решил, что это может быть потому, что у меня не переопределён метод int GetHashCode() в MyClass, но и это не помогло(я возвращал там "ToString().GetHashCode();").

Посоветуйте, что делать, пожалуйста. Я чувствую что чего-то не хватает, но чего?

Спасибо заранее!


01.06.09 22:39: Перенесено модератором из '.NET' — AndrewVK
-= J-Pro =- with respect
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.