Форматирование сетки в asp.net с валидаторами внутри шаблонов - PullRequest
1 голос
/ 22 ноября 2011

Когда я добавляю валидаторы к любому типу шаблона внутри вида сетки, кажется, что валидаторы изменяют высоту, ширину и выравнивание ячейки / столбца. Я могу удалить все форматирование [удалить таблицу стилей и любые другие атрибуты], и когда я добавлю валидаторы в шаблон, форматирование изменится - это повлияет на валидаторы. Я очень новичок в .net - как предотвратить влияние форматирования со стороны валидаторов? Я думаю, что они будут иметь нулевой эффект!

Спасибо!

ниже приведен один пример столбца:

<asp:TemplateField HeaderText="Paid" SortExpression="PaidPrice" ControlStyle-Width="50px" ItemStyle-HorizontalAlign="center">
        <EditItemTemplate>
            <asp:TextBox ID="PaidPrice" runat="server" Text='<%# Eval("PaidPrice","{0:f}") %>' ></asp:TextBox>
            <asp:CompareValidator ID="CompareValidator2" Runat="server" ControlToValidate="PaidPrice" Operator="DataTypeCheck" Type="Currency"
                ErrorMessage="You must provide a valid currency value for the Paid Price." >*</asp:CompareValidator>
        </EditItemTemplate>
        <ItemTemplate>
            <asp:Label ID="lblPaidPrice" runat="server" Text='<%# Eval("PaidPrice","{0:c}") %>' ></asp:Label>
        </ItemTemplate>
    </asp:TemplateField>

1 Ответ

2 голосов
/ 22 ноября 2011

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

В этом случае это может быть лекарством:

Установите свойство Display vlaidatorsв "Динамический".Тогда они будут занимать место только в случае ошибки проверки.

Значением по умолчанию для этого свойства является «Статическое», что позволяет ему занимать одинаковое количество места независимо от того, является ли сообщение видимым или нет.

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