私はSQLテーブルの結果を持っています。剣道グリッド - データベースのセルフォーマットの動的列
ProductNumber ProductNumberColorClass注文番号OrderNumberColorClass
私は、この情報をレンダリングするために剣道を使用しようとしています。基本的に私は
ProductNumber注文番号
データ値として出力を必要とCSSクラス(ProductNumberColorClass)
を適用する基本的にこれは列の多くの報告です。ユーザーは、表示したい列のみを選択できます。
Webサイトの例を使用してグリッドをレンダリングすることができます。私は応募できません。
私のアプリケーションはAsp.net MVCアプリケーション
更新
私はあなたのフィードバックをしようとしています。これは私のコードです。基本的には、リストが50ほど大きいので、各列のコーディングを避けたかったのです。レポートをカスタマイズして、ユーザーが一部の列を非表示にすることができます。私はループを使いました。ただし、このシナリオでは、clienttemplateは機能しません。それがコードの問題であれば、私はあまりよく分かりません。
私のコードで何が間違っているのか分かっていれば、問題についても学ぶのに役立ちます。
meanwhileIはclienttemplateを追加し、カラム情報を働い指定アップデート2列を手動で入力し、可視
@(Html.Kendo().Grid <DataTransferObjects.ViewModels.UserReportDataModel>()
.Name("Grid")
.HtmlAttributes(new { style = "height: 550px;" })
.Pageable(pageable => pageable
.Input(true)
.Numeric(false)
)
.Sortable()
.Scrollable(
scr => scr.Height(430)
)
.Filterable()
.DataSource(dataSource => dataSource
.Ajax()
.Read(read => read.Action("GetReportData", "ShortTermPlanner").Data("AdditionnalParameters"))
.PageSize(20)
.ServerOperation(false)
)
.Columns(columns =>
{
var colIndex = 0;
foreach (var col in Model.lstHeaderInformation)
{
if (col.SqlColumnName == "ProductNumber")
{
columns.Bound(col.SqlColumnName)
.Title(col.ColumnHeader)
.Filterable(false)
.Visible(col.IsVisible)
.Width(1190)
.ClientTemplate("<div style='background-color:red; text-align:center;width:70px'> #= ProductNumber # </div>");
}
else
{
columns.Bound(col.SqlColumnName)
.Title(col.ColumnHeader)
.Filterable(true)
.Visible(true)
.Width(300)
.Locked(true)
.HtmlAttributes(new { @class = "selectedRow" });
}
}
})
.Resizable(resize => resize.Columns(true))
.Reorderable(reorder => reorder.Columns(true))
)
として属性を追加するつもりです。ありがとう
私は好奇心が強いですが、表示する必要があり、レポートに適用する必要がある列名、タイトル、クラスを定義する3つのテーブルをループする方法があります。私が探しています何
は
MYレポートです - reportcoldefinication とレポートから、それぞれのマッチングCOLNAMEのために今ではreportcoldefinication
から私のヘッダテーブルレポート SELECT * FROM COLNAME、タイトル、クラスを選択します。クラスが適用されたグリッドに列を追加します。
私はそれを試みます。これは私のコードです。 – user3545750