2009-09-22 52 views
0

我在使用ActionSyntax的aspx文件中有代码,而我想用GridModel代替,但我不知道该怎么做。MvcContrib GridModel:是否有可能在GridModel中执行ActionSyntax

这里是我的aspx文件的样本:

<% Html.Grid(ViewData.Model).Columns(column => { 
    column.For(x => x.Id).Named("N° de contrat"); 
    column.For(x => x.SubscriptionDate).Format("{0:d}").Named("Date de souscription"); 
    column.For(x => x.SubscriptionOrigin).Named("Source"); 
    column.For(x => x.Agent).Named("Agence(*)"); 
    column.For(x => x.Agent).Named("Agent"); 
    column.For(x => x.Subscriber).Named("Souscripteur"); 
    column.For(x => x.ProductTitle).Named("Produit"); 
    column.For(x => x.NbBeneficiaries).Named("Nombre de bénéficiaires"); 
    column.For(x => x.Price).Named("Montant du contrat"); 
    column.For("PDF").Named("").Action(p => {%> <td><img src="../Content/Images/pdf.gif" /></td> <%}); 
    column.For("Mail").Named("").Action(p => {%> <td><img src="../Content/Images/mail.gif" /></td> <%}); 
    column.For("Attestation").Named("").Action(p => {%> <td><img src="../Content/Images/attestation.gif" /></td> <%}); 
    column.For("Poubelle").Named("").Action(p => {%> <td><img src="../Content/Images/poubelle.png" /></td> <%}); 
    }).Attributes(id => "subList").Render(); %> 

,我想这样做:

<%= Html.Grid(ViewData.Model).WithModel(new MyGridModel()) %> 

但我不知道如何呈现在这个ActionSyntax部分。 cs文件:

column.For("PDF").Named("").Action(p => {%> <td><img src="../Content/Images/pdf.gif" /></td> <%}); 
column.For("Mail").Named("").Action(p => {%> <td><img src="../Content/Images/mail.gif" /></td> <%}); 
column.For("Attestation").Named("").Action(p => {%> <td><img src="../Content/Images/attestation.gif" /></td> <%}); 
column.For("Poubelle").Named("").Action(p => {%> <td><img src="../Content/Images/poubelle.png" /></td> <%}); 

有人有什么想法吗?

谢谢。

回答

2

好吧,我找到了解决方案!下面是该列 “PDF” 的例子:

在我GridModel:

Column.For("PDF").Named("").Action(p => GetPdfColumn()); 

而且GetPdfColumn():

private void GetPdfColumn() 
    { 
     HttpContext.Current.Response.Write(@"<td><img src='../Content/Images/pdf.gif' /></td>"); 
    } 

这么简单。

+0

也许我可以使用代表,但我没有设法使用它们。 – LoSTxMiND 2009-09-22 09:31:10

相关问题