2012-02-02 9 views
1
  <asp:GridView ID="CommentGrid" GridLines="None" runat="server" AutoGenerateColumns="False"> 
      <Columns> 
       <asp:BoundField HeaderText="No." DataField="Num" > 
        <HeaderStyle HorizontalAlign="Left" /> 
       </asp:BoundField> 
       <asp:BoundField HeaderText="Subject Name" DataField="SubjectName"> 
        <HeaderStyle HorizontalAlign="Left" /> 
       </asp:BoundField> 
       <asp:TemplateField HeaderText="Comment"> 
        <ItemTemplate> 
         <asp:TextBox ID="CommentBox" runat="server" TextMode="MultiLine" CssClass="commentTbx" MaxLength="2"></asp:TextBox> 
        </ItemTemplate> 
        <HeaderStyle HorizontalAlign="Left" /> 
       </asp:TemplateField> 
      </Columns> 
     </asp:GridView> 

Вышеуказанная Maxlength = "2" не работает! Я даже пробовал использовать другой метод, такой как привязка данных, и цикл foreach для его кодирования, но он все еще не работает.Как ограничить длину текста поля шаблона текстового поля в gridview?

ответ

0

Да, это из-за TextMode="MultiLine". Вам нужен javascript, чтобы проверить общие символы и наложить ограничение.

+0

да, ure справа !! но почему это так .. У вас есть решение? –

0

Вы пробовали <EditItemTeplate> вместо <ItemTemplate>?

+0

Эй, но что им делать, это отобразить текстовое поле на экране сетки. –

1

Пользователь RegularExpressionValidator. Следующее принимает минимальные символы 0 и максимум 2 символа.

<asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server" 
     ControlToValidate="CommentBox" ErrorMessage="Out of Range Max 2 Chars" 
     ValidationExpression=".{0,2}"></asp:RegularExpressionValidator> 

MaxLength не работает в режиме MultiLine.