剣道UIのMVCグリッドのClientTemplate内で使用されるカミソリ関数の中でバインドされた列の値を使用する必要があります。 LIKE「AnyColumnValue」パラメータの下:MVCの剃刀関数にバインドされた列の値を渡す剣道UIグリッド
.ClientTemplate(@KendoHtmlFuncs.RequestingDeleteWithConfirmationLink(itemNameL, AnyColumnValue));
全例は以下の通りです:@TheDreadPirateStephenのコメントの後にいくつかの掘削の終わりに
@(Html.Kendo().Grid<DisplayOfGroupCompanyVm>()
.Name(itemNameL + "-definitions-grid")
.Columns(columns =>
{
columns.Bound(c => c.Name);
columns.Bound(c => c.DateCreated).ClientTemplate("#= kendo.toString(DateCreated,'yyyy-MM-dd')#"); //.Width(150);
columns.Bound(c => c.IsActive);
columns.Bound(c => c.CreateStatus);
columns.Template(@<text></text>)
.Width(100)
.ClientTemplate(@KendoHtmlFuncs.GetModalForRequestingEditLink(itemNameL));
columns.Template(@<text></text>)
.Width(100)
.ClientTemplate(@KendoHtmlFuncs.RequestingDeleteWithConfirmationLink(itemNameL, AnyColumnValue));
})
AnyColumnValueとは何ですか?グリッドにバインドされたdataSourceの列の実際の値は?そうであれば、KendoHtmlFuncs.RequestingDeleteWithConfirmationLink()はサーバーサイドの関数(cshtmlレンダリング中にサーバー上で実行される)としてグリッドがdataSourceにバインドされるまで、AnyColumnValueに値がありませんクライアント。 RequestingDeleteWithConfirmationLink()をクライアント側の関数にしなければならないようです... ClientTemplate内の*サーバーコードを*実行することはできません。 –
@TheDreadPirateStephenありがとう、それは正しいです。これに加えて、カミソリ関数のパラメータとして列の値を使用する回避策がありますか? – serefbilge
私は、カラムの値がサーバ上に存在しない(カミソリ関数が実行される)ので、そうは思わない。行がレンダリングされたときにClientTemplateがクライアント上で実行されるときにClientTemplateの実際の列値を使用することができます.Razor関数を呼び出すことはできません。そのビューはクライアントに返されます。 http://docs.telerik.com/aspnet-mvc/helpers/grid/configuration#clienttemplateを参照するか、関数の実装と渡している列を提供してください。私は答えを書くことを試みます。 –