2015-11-23 14 views
1

我有低於一個GridView會顯示一些文本,並提供一個複選框。GridView控件將「Y」或「N」到checkbox.checked上的ItemTemplate場

<asp:GridView ID="surveyTableTest" runat="server" AutoGenerateColumns="false" > 
     <Columns> 
      <asp:TemplateField> 
       <ItemTemplate> 
        <asp:HiddenField ID="hdnSurveyID" runat="server" Value='<%#DataBinder.Eval(Container.DataItem, "survey_id") %>' />     
       </ItemTemplate> 
      </asp:TemplateField> 
      <asp:TemplateField HeaderText="URL"> 
       <ItemTemplate> 
        <asp:Label ID="surveyURL" runat="server" Text='<%#DataBinder.Eval(Container.DataItem, "URL") %>' /> 
       </ItemTemplate> 
      </asp:TemplateField> 
      <asp:TemplateField HeaderText="Used"> 
       <ItemTemplate> 
        <asp:CheckBox ID="surveyUsed" runat="server" /> 
       </ItemTemplate> 
      </asp:TemplateField> 
     </Columns>    
    </asp:GridView> 

我有一個簡單的類綁定到GridView。這是從SQL存儲過程填充的。

public class surveyURL 
    { 
     public int survey_id { get; set; } 
     public string URL { get; set; } 
     public string used { get; set; } 
    } 

如何可以從「使用」,這是NCHAR(1)「Y」或「N」和把它轉換成一個checkbox.checked結果,其中「使用」 =「Y」

的信息

這就是我目前在C#中所做的,這足以填充隱藏字段和第一個模板字段。我不知道如何繼續複選框。

var test = cn.Query<surveyURL>("sp_create_url", p, commandType: CommandType.StoredProcedure); 

    surveyTableTest.DataSource = test; 
    surveyTableTest.DataBind(); 
+1

爲什麼不申報「字符串中使用」爲「BOOL使用」? –

回答

0

您可以使用CheckBox控件的Checked性能和使用C# Conditional operator這樣的: -

<asp:CheckBox ID="surveyUsed" runat="server" 
       Checked='<%# Eval("used").ToString() == "Y" ? true: false %>' /> 
相關問題