2015-12-08 2 views
0

Я выбираю поле BIT из таблицы базы данных через SP и используя его для заполнения gridview. Все поля отлично в gridiview, кроме поля Checkbox, которое не представляет логические данные из базы данных. Остается флажков вместо того, чтобы Ticked упаковывают истинное значениеПочему флажок не привязан к данным?

<asp:TemplateField HeaderText="Conveyed ?"> 
    <ItemTemplate> 
      <asp:CheckBox ID="chkBoxIsConveyed" runat="server" OnCheckedChanged="chkBoxIsConveyed_CheckedChanged" Checked='<%# Convert.ToBoolean(Eval("IsConveyed")) %>' AutoPostBack="true" /> 
    </ItemTemplate> 
</asp:TemplateField> 

.cs:

protected void chkBoxIsConveyed_CheckedChanged(object sender, EventArgs e) 
{ 
    int index = ((GridViewRow)((Control)sender).Parent.Parent).DataItemIndex; 
} 

ответ

1

Вы должны изменить это:

Checked='<%# Convert.ToBoolean(Eval("IsConveyed")).ToString() == "1" ? true : false 

Для этого:

Checked=<%# Convert.ToBoolean(Eval("IsConveyed")) %> 
+0

Ошибка: невозможно преобразовать строку в bool –

+0

ct ... :(пожалуйста, попробуйте мое обновление и дайте мне знать. Спасибо – Christos

+0

ok sir working, но это только один способ, означать, что он показывает, что находится в базе данных, но при отключении он не обновляется в DB –

Смежные вопросы