Я использую DevExpress для создания сетки, но я пытаюсь создать вспомогательные методы, чтобы упростить объем генерируемого кода. Например, следующий простой пример создает столбец сетки:C# Параметры действия в методах расширения
settings.Columns.Add(column =>
{
column.FieldName = "StatusId";
column.Caption = "Status";
column.Width = Unit.Percentage(20);
});
Я хочу использовать методы расширения, чтобы получить следующее, что позволяет разработчику упростить основную работу, но до сих пор получить доступ к дополнительным настройкам:
settings.AddColumn("StatusId", "Status", column =>
{
column.Width = Unit.Percentage(20);
});
Я мог бы просто вернуть переменную столбца, но это означает необходимость создания нового имени переменной для каждого столбца, поэтому я хотел бы поддерживать подход Action.
Что бы мой метод расширения выглядел так, чтобы поддерживать этот формат? Ему понадобится создать столбец с установленными настройками по умолчанию и добавить его в коллекцию колонок. Это, насколько я получаю:
public static void AddColumn(this GridViewSettings settings, string fieldName, string caption, Action<MVCxGridViewColumn> column)
{
//...?
}
Для того чтобы вам код для работы код внутри должен перезванивать столбец Action. Это означает, что вы должны иметь MVCxGridViewColumn. Я не знаю, что это такое, но ты делаешь. Какая конкретная проблема у вас есть? Вы не знаете, как создать или получить экземпляр MVCxGridviewColumn? –