RadTextBox EmptyMessage и .Replace равны пустым или со значением? - PullRequest
0 голосов
/ 19 июня 2019

У меня есть элемент управления RadTextBox в моей форме, и в одном из методов он устанавливает текст элемента управления следующим образом:

SecondHalfTB.EmptyMessage = sharedMailbox.MailboxEmail.Replace("CAAS_", string.Empty)
                                                 .Replace("@caas.gov.sg", string.Empty);

<td class="ms-formbody">
    CAAS_<telerik:RadTextBox ID="SecondHalfTB" runat="server" MaxLength="255">
    </telerik:RadTextBox>
    @caas.gov.sg
    <div>
        <asp:Label ID="lbSecondHalfTB" runat="server" CssClass="WarningMessage"></asp:Label>
    </div>
</td>

enter image description here


Если я не ввел никаких значений в текстовое поле, будет ли следующий оператор возвращать пустую строку?

string newEmail = SecondHalfTB.Text;
if (newEmail == string.Empty)
{
    newEmail = SecondHalfTB.DisplayText;
}

1 Ответ

0 голосов
/ 19 июня 2019
CAAS_<telerik:RadTextBox ID="SecondHalfTB" runat="server" MaxLength="255">
</telerik:RadTextBox>
@caas.gov.sg

Значения на самом деле жестко запрограммированы в вашей разметке, не так ли? Все, что вам нужно, это просто удалить их из HTML.

По определению, свойство EmptyMessage позволяет указать внешний вид элемента управления вводом, когда пользователь не ввел значение.

Принимая во внимание, что свойство DisplayText позволяет вам установить отображаемое значение с сервера на другое значение фактического значения. Аналогично пустому сообщению, но отображается, даже если ввод не пустой. Этот текст будет очищен, как только пользователь изменит введенное значение.

Для вас обновленный вопрос - newEmail будет таким же значением, как DisplayText, если фактическое значение текстового поля пусто.

...