2013-01-08 64 views
2

我正在嘗試向我的mvc網格視圖列添加多個設置。我知道如何將一個特定的設置應用於列。我瀏覽了他們的網站文檔,無法找到這個例子。我知道它可以完成,可能很簡單,但無法在任何地方找到它的例子。MVC Devexpress Gridview Columns,如何將多個設置添加到特定列?

@{ 
var grid = Html.DevExpress().GridView(
    settings => 
    { 
     settings.Name = "gvMyGridView"; 
     settings.Width = System.Web.UI.WebControls.Unit.Percentage(100); 
     //Allows sorting etc 
     settings.CallbackRouteValues = new { Controller = "Home", Action = "MyGridPartial" }; 
     settings.ClientSideEvents.BeginCallback = "OnBeginCallback"; 

     settings.Columns.Add("ColumnA").SortOrder = DevExpress.Data.ColumnSortOrder.Ascending; 
     //settings.Columns.Add("ColumnA").Width = Unit.Pixel(75); 
     //As you can see above i want sort order set and the width set but am unable to do so 
     settings.Columns.Add("ColumnB").Width = Unit.Pixel(175); 
     settings.Columns.Add("ColumnC").Width = Unit.Pixel(175); 

     //Filter settings 
     settings.Settings.ShowFilterRow = true; 
     settings.Settings.ShowFilterRowMenu = true; 
     settings.CommandColumn.ClearFilterButton.Visible = true; 

     //Inline editing 
     settings.KeyFieldName = "Id"; 

    }); 

    if (ViewData["EditError"] != null){ 
     grid.SetEditErrorText((string)ViewData["EditError"]); 
    } 
} 
@grid.Bind(Model).GetHtml() 

我上面的例子很自我解釋。也許我必須創建自己的列添加屬性,然後手動添加它。不確定,因爲這是我第一次使用MVC Devexpress Gridviews。任何意見是極大的讚賞。

回答

16
settings.Columns.Add(column => 
{ 
column.FieldName = "Title"; 
column.Width = System.Web.UI.WebControls.Unit.Percentage(30); 
column.SortOrder = DevExpress.Data.ColumnSortOrder.Ascending; 
//other settings for column 
}); 
0

結束必須自己創建列。

var column = new MVCxGridViewColumn("ColumnA", MVCxGridViewColumnType.Default); 
column.Caption = "ColumnADisplay"; 
column.SortOrder = DevExpress.Data.ColumnSortOrder.Ascending; 
column.Width = Unit.Pixel(75);   
settings.Columns.Add(column); 
1

這裏是另一種方式:

var column = settings.Columns.Add("ColumnA", "ColumnADisplay"); 
column.SortOrder = DevExpress.Data.ColumnSortOrder.Ascending; 
column.Width = Unit.Pixel(75); 
0

什麼用的:

settings.Columns.Add(new MVCxGridViewColumn("ColumnA", MVCxGridViewColumnType.Default) 
{ 
    Caption = "ColumnADisplay", 
    vSortOrder = DevExpress.Data.ColumnSortOrder.Ascending, 
    Width = Unit.Pixel(75) 
}); 
相關問題