2017-01-25 4 views
0

Я показываю данные в виде сетки, но некоторые поля содержат большие данные (пару строк). Я хочу показать только часть его в сетке, а не все данные. Я нашел несколько примеров (подстрока), используя «Eval», но как это сделать, используя Bind(). Пожалуйста, помогитеПодстрока Gridview Asp.net с использованием Bind()

<asp:TemplateField HeaderText="Department" SortExpression="vDepartment"> 
    <EditItemTemplate> 
     <asp:Label ID="Label2" runat="server" Text='<%# Bind("vDepartment") %>'></asp:Label> 
    </EditItemTemplate> 
    <ItemTemplate> 
     <asp:Label ID="Label377" runat="server" Text='<%# Bind("vDepartment") %>'></asp:Label> 
    </ItemTemplate> 
</asp:TemplateField> 

ответ

0

Вы можете использовать оператор троичного проверить длину vDepartment и использовать Substring, когда она превышает максимальную длину.

<asp:Label ID="Label377" runat="server" Text='<%# Eval("vDepartment").ToString().Length > 25 ? Eval("vDepartment").ToString().Substring(0, 25) : Eval("vDepartment") %>'></asp:Label> 
+0

Благодарим за помощь, которая отлично работает. мы можем сделать это с помощью Bind() –

+0

Нет, это не работает с 'Bind'. Если у вас возникли проблемы, вы можете попробовать «DataBinder.Eval (Container.DataItem,« vDepartment »). ToString()' – VDWWD

+0

Спасибо за помощь. –

Смежные вопросы