2011-01-08 3 views
0

У меня есть ретранслятор с флажком и текстовым полем, который я привязываю к источнику данных. В зависимости от условий от кода позади я хочу иметь возможность отключать флажок и текстовое поле динамически.Как отключить элемент управления в репитере

В настоящее время это то, что я имею в

<td><asp:CheckBox runat="server" onclick="checkbox(this); CheckChildren(this);" Enabled='<%#DataBinder.Eval(Container.DataItem, "DISABLE") %>' Text='<%#DataBinder.Eval(Container.DataItem, "CTEXT") %>' Value='<%#DataBinder.Eval(Container.DataItem, "CVALUE") %>' /></td> 

<td><asp:TextBox runat="server" onkeyup="AppendValues(this);" Enabled='<%#DataBinder.Eval(Container.DataItem, "DISABLE") %>' Width="35px" MaxLength="3" Name='<%#DataBinder.Eval(Container.DataItem, "CNAME") %>' CValue='<%3DataBinder.Eval(Container.DataItem, "CNTVALUE") %>'></asp:TextBox></td> 

# DataBinder.Eval (Container.DataItem, «ВЫКЛЮЧЕНО») создается в строковое значение «истинно» на код позади еще при код запущен, я получаю ошибку InvalidCastException.

Что я делаю неправильно?

ответ

0

Вы должны передать boolean значение Enabled. Попробуйте что-то вроде этого

bool.Parse(DataBinder.Eval(Container.DataItem, "DISABLE").ToString()) 
+0

Вы делаете это в правильном коде? – mattgcon

+0

нет, вы должны поместить это в свой файл aspx/ascx, в свою декларацию <%# %> – karlis

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