Asp.Net Toggle проверено свойство флажка привязки данных - PullRequest
0 голосов
/ 09 августа 2010

У меня есть элемент управления GridView, в котором один столбец флажков настроен так:

<asp:TemplateField>
   <ItemTemplate>
        <asp:CheckBox ID="RowCheckBox" runat="server" Enabled="false" Checked='<%# (bool)DataBinder.Eval(Container.DataItem ,"Associated") %>'/>
   </ItemTemplate>
</asp:TemplateField>

Затем, когда пользователь нажимает кнопку «Редактировать», я запускаю сценарий, который включает все флажки (который работает нормально), а затем, когда пользователь нажимает флажок, флажок появляется или исчезает, как и должен.

Проблема, с которой я столкнулся, заключается в том, что при попытке прочитать значение флажка из кода:

CheckBox checkBox = (CheckBox) row.FindControl("RowCheckBox");
bool checked = checkBox.Checked;

Если привязанное к нему значение было true, тогда checked по-прежнему true, независимо от того, было ли оно переключено или нет.

У кого-нибудь есть идеи, почему это так?

1 Ответ

0 голосов
/ 10 августа 2010

В конце концов я не смог найти решение, поэтому обошел стороной:

  1. Добавить скрытое поле в поле шаблона,
  2. Обновить значение скрытогополе к True или False с Javascript (добавление атрибута onclick к флажку),
  3. В коде, приведенном ниже, приведите скрытое поле value к bool и используйте его вместо проверенногосвойство флажка.

Я думаю, что это может быть что-то связанное с View States, но я не уверен, что они есть, и у меня нет времени, чтобы расследовать, к сожалению.

Clivest

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...