Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Databinding
|
|||
|---|---|---|---|
|
#18+
Хочу написать некий компонент который можно будет привязывать, например к DataGrid. Или там DropDownList, не важно... Не могу разобраться - пока нашел только, что для того чтобы привязывать компонент, он должен реализовывать интерфейс IList.На этом пока все :) В общем, как привязать компонент к DataGridу, DropDownListу, etc, через DataSource и Datamember?Как этот компонент должен выглядеть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.04.2004, 10:38 |
|
||
|
Databinding
|
|||
|---|---|---|---|
|
#18+
А что компонент делать-то будет? Для чего его привязывать к DataGrid ? Может привязка DataSource ? Или он сам будет a la DataSource ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.04.2004, 12:37 |
|
||
|
Databinding
|
|||
|---|---|---|---|
|
#18+
Он сам будет a la DataSource... Ну вот я нашел пример...Но как то плохо он работает :) public class Widget { public int Number=0; public virtual string AMethod() { return "This Widget's Number is : " + Number.ToString(); } } //***************************************************** //Widgets collection class MUST derive from //System.Collections.CollectionBase public class Widgets:CollectionBase { public virtual void Add(Widget NewWidget) { //forward our Add method on to //CollectionBase.IList.Add this.List.Add(NewWidget); } //this is the indexer (readonly) public virtual Widget this[int Index] { get { //return the Widget at IList[Index] return (Widget)this.List[Index]; } } } В общем, могу я привязать его к DropDownList. Если переопределю метод ToString() в классе Widget, то все ОК. Но привязать к DataGrid не получается... Получается пустой грид.Точнее есть строки, но нет столбцов :). Количество он увидел, а вот что выводить видимо не знает... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.04.2004, 12:48 |
|
||
|
Databinding
|
|||
|---|---|---|---|
|
#18+
Ага! Когда я добавил в класс Widget следующее: public int _Num { get {return Number;} set {Number = value;} } public string _Test { get { return Test; } set { Test = value; } } В датагриде начало отображаться _Num и _Test. Теперь интересно следующее: Вот эти два поля я задал при создании класса, а могу ли я как то их изменять динамически? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.04.2004, 13:22 |
|
||
|
Databinding
|
|||
|---|---|---|---|
|
#18+
Э...В смысле не значения полей, а сами поля, добавлять, удалять там... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.04.2004, 13:30 |
|
||
|
Databinding
|
|||
|---|---|---|---|
|
#18+
Насколько я знаю - нет. Поля только в JavaScript добавляются в любой момент, когда пожелаешь. А C# - строгий язык, компилируемый, при том. А если поля добавлять и удалять когда захочется - это же, простите, бардак будет! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.04.2004, 13:42 |
|
||
|
Databinding
|
|||
|---|---|---|---|
|
#18+
И ещё одно замечание... Я тут недавно потыкался, потыкался с элементом, подобным DataGrid , и пришёл к выводу, что практически всё можно сделать комбинацией из стандартных элементов. Это и проще, и быстрее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.04.2004, 13:51 |
|
||
|
|

start [/forum/topic.php?fid=18&msg=32465009&tid=1395836]: |
0ms |
get settings: |
8ms |
get forum list: |
12ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
49ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
32ms |
get tp. blocked users: |
1ms |
| others: | 266ms |
| total: | 382ms |

| 0 / 0 |
