Deutsch
Germany.ruФорумы → Архив Досок→ Программирование

​Сослаться на контрол?

11.07.19 18:13
Re: ​Сослаться на контрол?
 
Murr_0002 знакомое лицо
Murr_0002

Поймал интересный глюк:


ITable source;

public override object DataSource
{
get
{
if (source == null)
{
return base.DataSource;
}
return source;
}

set
{
source = value as ITable;
if (source == null)
{
base.DataSource = value;
}
base.DataSource = source.GetDataTable();
IDropDownListBindable bindable = value as IDropDownListBindable;
if (bindable != null)
{
this.DataTextField = bindable.DataTextField;
this.DataValueField = bindable.DataValueField;
}
}
}

Переопределил DataSource чтобы использовать агрегированную DataTable.

Т.е. если распознается что-то совместимое - дататабля извлекается и присваивается. Если нет - пользуем что дано.


Глюк - base.DataSource - отладчик все одно показывает оригинальный тип value.

Хотя присваивалась именно Дататабля... Виртуальность подводит?

 

Перейти на