Как отключить контроль внутри повторителя - PullRequest
0 голосов
/ 08 января 2011

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

В настоящее время это то, что у меня в <ItemTemplate>:

<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, "DISABLE") устанавливается в строковое значение "true" в коде, но когда код запускается, я получаю исключение InvalidCastException.

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

1 Ответ

0 голосов
/ 08 января 2011

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

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