3

EntityFrameworkのコードファーストMVCプロジェクトでInfragisticsを使用しています。非表示の列(ID)を持つテーブルを表示したいのですが、編集可能である必要があります。これが私がこれまでに得たものです:

<table id="igTests"></table>
@(Html.Infragistics().Grid<BusinessModel.VO.TestVO>().ID("igTests")
    .AutoGenerateColumns(false)
    .Columns(column =>
    {
        column.For(x => x.TestId).DataType("int").HeaderText("id");
        column.For(x => x.TestNum).DataType("int").HeaderText("Test num");
        column.For(x => x.Type).DataType("string").HeaderText("Type");
        column.For(x => x.Nature).DataType("string").HeaderText("Nature");
        column.For(x => x.TeamName).DataType("string").HeaderText("Team");
        column.For(x => x.CreateDate).DataType("date").HeaderText("Creation date");
    })
    .Features(feature => {
        feature.Sorting().CaseSensitive(true);
        feature.Filtering().Mode(FilterMode.Simple);
    })
    .PrimaryKey("TestId")
    .DataSource(Model.TestsVO.AsQueryable())
    .DataBind()
    .Render())

表示される内容は次のとおりです。

次に、更新機能を追加しましょう(readOnlyは表示されないため、役に立たないことがわかります)。

feature.Updating().EnableAddRow(true).EnableDeleteRow(true).EditMode(GridEditMode.Row).ColumnSettings(settings =>
            settings.ColumnSetting().ColumnKey("TestId").ReadOnly(true)
        );

そして私のID列を非表示にします:

column.For(x => x.TestId).DataType("int").HeaderText("id").Hidden(true);

これが私が得たものです。ご覧のとおり、テーブルは私のID列が表示されているように機能します。

これは、更新機能を追加したときに発生しました。列が表示されているように動作する「新しい行を追加」行を修正する方法について何か考えがありますか?前もって感謝します。

4

2 に答える 2

4

おそらくこれを追加する必要があります

}).Features(features => features.Hiding()
           .ColumnSettings(settings =>
           {
                 settings.ColumnSetting().ColumnKey("id").Hidden(true).AllowHiding(false)

http://www.infragistics.com/products/jquery/sample/grid/column-hiding-on-initialization

于 2012-11-08T09:54:42.617 に答える
0

.Width("0px")ID列でReadOnlyを使用して動作するようになりました。少し汚れていましたが、他に選択肢がありませんでした...

于 2012-11-08T09:43:54.930 に答える