Asp.Net - Размер к содержанию для таблицы - PullRequest
0 голосов
/ 10 ноября 2011

Как мне сделать таблицу автоматически изменяющей размер содержимого (например, использовать минимальный размер, достаточный для отображения внутренних элементов управления) в ASP.NET 3.5?

У меня есть таблица, содержащая пару строк.Некоторые строки не всегда должны отображаться (например, когда все элементы управления в этой строке скрыты).Я хочу, чтобы эти строки были скрыты (или size = 0) и, следовательно, таблица стала меньше.

Ответы [ 2 ]

0 голосов
/ 10 ноября 2011

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

Таблица автоматически изменяет размер их содержимого, если вы не укажете атрибут ширины таблицы и тд ячеек. Так что это легкая часть.

Вопрос об отображении или скрытии строк, вероятно, требует более подробной информации. Если вы пытаетесь показать / скрыть от кода за / серверной стороны, вы можете сделать строку серверным элементом управления и установить его свойство Visible:

<tr runat="server" id="row1">
 <td>Hi</td>
</tr>

А затем в коде позади установите свойство Visible

row1.Visible = false

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

0 голосов
/ 10 ноября 2011

Не зная ваших точных настроек, сложно дать конкретный ответ, соответствующий вашим потребностям. Если на странице отображается строка таблицы, она займет как минимум одну строку, если вы ее не отключите. Один из методов - установить для строки таблицы значение runat = "server", а затем установить visible = "false" в вашем коде, если элементы управления внутри не отображаются.

<tr id="tr" runat="server">
<td>Controls</td>
</tr>

В вашем коде:

if( ControlsNotShowing )
    tr.Visible = false;
...