2011-01-23 40 views
5

MVC 3 webgridで作業していますが、ボタンを使用したいカラムの1つで、次のコードをビューに配置するとこれが実現しました。MVC 3 Webgrid Column

@grid.GetHtml(columns: 
      grid.Columns(
      grid.Column("ID", "id", canSort: true), 
      grid.Column("Surname", "surname", canSort: true), 
      grid.Column("Forenames", "forename", canSort: true), 
      grid.Column(format: @<input type="button" value="View"/>)), 
      headerStyle: "header", 
      alternatingRowStyle: "alt", 
      htmlAttributes: new { id = "DataTable" } 
      ) 

は、しかし、私は、ページングのために、グリッド・サーバー側を作成したいが、私はアクションで以下のコードを入れたとき、私は、ボタンの列のためにエラーが発生します。

var htmlString = grid.GetHtml(tableStyle: "webGrid", 
              headerStyle: "header", 
              alternatingRowStyle: "alt", 
              htmlAttributes: new { id = "DataTable" }, 
              columns: grid.Columns(
               grid.Column("ID", "id", canSort: true), 
               grid.Column("Surname", "surname", canSort: true), 
               grid.Column("Forenames", "forename", canSort: true),  
               grid.Column(format: @<input type='button' value='View'/>)                   
              )); 

最初のエラーは、「キーワード、識別子、または文字列の後に期待される文字列」です。

ボタンの列に間違った形式を使用していますか?

答えて

3

コードビハインドでRazor構文を使用しようとしているようです。あなたはこのようなかみそりのため<text>タグを試すことができます

gridColumn.Format = (item) => 
{ 
    return new HtmlString("<input type='button' value='View'/>"); 
} 
+0

ほとんどの場合、grid.Column(format:(item)=> {return new HtmlString( "");})ありがとうございました。 – user415394

2

...ラムダ式を使用して、このような何かを試してみてください。

grid.Column(format: @<text><input type='button' value='View'/></text>) 
関連する問題