2010-04-20 3 views
0

내가 수동으로 만든 dataTable을 바인딩하는 GridView가 있습니다. GridView와 dataTable에는 Name과 isBusy라는 두 개의 열이 있습니다. 내의 GridView는 편집 모드로 특정 행을 설정하지 않으면 작동 중 열이 편집 불가능한 것을 제외하고는 잘 작동이ASPX의 CheckBox 열에서 데이터 편집/액세스 : GridView - C#

<Columns> 
    <asp:BoundField HeaderText="Name" DataField="Name" SortExpression="Name">   
    </asp:BoundField>  
    <asp:CheckBoxField DataField="isBusy" HeaderText="Busy" SortExpression="isBusy" /> 
</Columns> 

것 같습니다. 체크 박스의 전체 열을 점검 할 것을 요구합니다. 그래서 템플릿에 열을 변환, 그래서 열은 다음과 같이 :

<Columns> 
    <asp:BoundField HeaderText="Name" DataField="Name" SortExpression="Name">   
    </asp:BoundField>  
    <asp:TemplateField HeaderText="Busy" SortExpression="isBusy"> 
     <ItemTemplate> 
     <asp:CheckBox ID="isBusy" runat="server" Checked='<%# Eval("isBusy") %>' oncheckedchanged="CheckBoxBusy_CheckedChanged" /> 
     </ItemTemplate> 
    </asp:TemplateField>  
</Columns> 

자,이 오류가 런타임에 발생합니다 :

System.InvalidCastException was unhandled by user code 
    Message="Specified cast is not valid." 
    Source="App_Web_zzjsqlrr" 
    StackTrace: 
     at ASP.projects_aspx.__DataBinding__control24(Object sender, EventArgs e) in c:\Project\Users.aspx:line 189 
     at System.Web.UI.Control.OnDataBinding(EventArgs e) 
     at System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding) 
     at System.Web.UI.Control.DataBind() 
     at System.Web.UI.Control.DataBindChildren() 
    InnerException: 

어떤 생각이 왜 이런 일이? 다음 단계는 체크 박스의 상태를 설정하고 가져 오는 방법을 알기 위해서입니다 (수동으로 체크 박스를 선택하는 방법을 찾지 못했습니다). 나는 지금

검사 = '<% 번호의 Convert.ToBoolean (평가 ("isBusy")) %>'

:

답변

0

좋아, 나는 부울에있는 확인란 값을 coverting 오류 과거 얻었다 수동으로 특정 확인란을 선택하고 확인란을 클릭하면 이벤트를 생성하는 방법을 찾을 수 없습니다. 어떤 아이디어?

+0

확인란을 특정 열에서 가져 와서 확인하도록 설정할 수 없습니까? – Ruben