GridView: дизайнер элементов управления - PullRequest
0 голосов
/ 12 мая 2010

У меня есть вопрос относительно GridView и его дизайнера элементов управления.

Я создал составной элемент управления, унаследованный от GridView. Я хотел бы сделать некоторые новые созданные элементы управления BoundField доступными в конструкторе элемента управления GridView? Чтобы я мог выбрать пользовательский элемент управления BoundField из списка «Доступные поля».

Кто-нибудь знает об этом?

1 Ответ

0 голосов
/ 13 мая 2010

Пример произвольного связанного поля

namespace CustomControls
{
public class CompositeBoundField : BoundField
{
    protected override object GetValue(Control controlContainer)
    {
        object item = DataBinder.GetDataItem(controlContainer);
        return DataBinder.Eval(item, this.DataField);
    }
}

public class CompositeCheckBoxField : CheckBoxField
{


    protected override object GetValue(Control controlContainer)
    {
        /*bool isChecked = false;
        if (this.DataField.ToLower() == "true")
            isChecked = true;

        object item = DataBinder.GetDataItem(controlContainer);
        return isChecked;
        */

        object item = DataBinder.GetDataItem(controlContainer);
        return DataBinder.Eval(item, this.DataField);
    }
}

}

И добавить это в конфиг

    <pages>
        <controls>

            <add assembly="App_Code" namespace="CustomControls" tagPrefix="cc"/>
        </controls>
    </pages>

Затем вы используете его на своей странице ASP.NET. Надеюсь, это поможет.

...