Я могу инвертировать значение в атрибуте, который использует “Оценку”?

Из того, что я знаю, строка просто копируется в память, выделенную для a_string, поскольку она более эффективна, чем освобождение памяти и выделение новой. Если память, выделенная для (a + a), меньше, чем размер, выделенный для a_string, она изменяется.

Строка управляет памятью для вас. Вам не нужно когда-либо выделять буферное пространство при добавлении или удалении данных в строку. Если вы добавите больше, чем уместится в выделенном в данный момент буфере, строка перераспределит его для вас за кулисами.

blockquote>

std :: string и автоматическое изменение размера памяти

13
задан Jeroen 9 October 2013 в 10:04
поделиться

4 ответа

Используйте Оценку вместо, Связывают. Свяжите для двухсторонней привязки, т.е. для случаев, где необходимо смочь сохранить данные назад к источнику данных.

Когда Вы используете, Связывают, скомпилированная страница на самом деле сгенерирует код, который использует Оценку для устанавливания значения плюс некоторый код для чтения вслух значения для сохранения. Поскольку Связывают, заменяется сгенерированным кодом, Вы не можете использовать дополнительную логику с, Связывают.

<asp:CheckBox ID="DefaultChecked" Checked='<%# !(bool)Eval("IsDefaultMessage") %>' Enabled="false" runat="server" />
<asp:LinkButton ID="MakeDefaultButton" runat="server" CommandName="MakeDefault' CommandArgument='<%#Bind("ResidentialInfoID") %>' Text="Make Default"/>
22
ответ дан 1 December 2019 в 21:12
поделиться

Если можно использовать Оценку, это - просто метод Control класс. Это является только особенным в этом, это должно быть в контексте связанного блока данных <%# ... %>. Кроме этого, можно в основном рассматривать блок как постоянный клиент <%= %> блок выражения:

<%# !(bool)Eval("IsDefaultMessage") %>

Если Вы хотите все еще Связать его (Оценка не является распространением в прямом и обратном направлениях), чем необходимо будет инвертировать его назад и вперед во время привязки данных. Вы, возможно, не должны делать это, хотя, если можно просто перефразировать управление. Например, если флажок, вместо того, чтобы маркировать его "Не Является сообщением По умолчанию" пользователю и отрицанию его назад и вперед, чем маркировка это "Является сообщение По умолчанию". Изобретенный пример, но Вы получаете идею.

5
ответ дан 1 December 2019 в 21:12
поделиться

Как я вспоминаю (Это было некоторое время), нет никакого особого волшебства в <%#Bind(. Это справедливо #Bind( внутри <%.... %>. Что означает, что Вы хотели бы:

 <%  ! #Bind("IsDefaultMessage") %>'
-1
ответ дан 1 December 2019 в 21:12
поделиться

Я никогда не использовал, Связывают, но мое понимание - то, что это подобно Databinder. Оценка. Так или иначе, оба эхо-сигнала методов, таким образом, необходимо бросить его к булевской переменной прежде, чем оценить его.

<%# !Convert.ToBoolean(Bind("IsDefaultMessage") %>

Править: Похож это не может быть сделано, и использование SqlDataSource на странице решило бы проблему. http://forums.asp.net/t/1009497.aspx.

1
ответ дан 1 December 2019 в 21:12
поделиться
Другие вопросы по тегам:

Похожие вопросы: