1

抱歉,问题标题不是很清楚,但也许图片有助于描述我的问题:

图片 http://my.jetscreenshot.com/2951/20100604-ioyo-164kb.jpg

我希望父面板中的小子面板可以自动调整大小。这是我的标记和代码隐藏:

    protected void Page_Load(object sender, EventArgs e)
        {
            var bkg = new[] { "background-color: wheat;", "background-color: gray;", "background-color: #AAAAAA;" };
            var random = new Random();
            for (var i = 0; i < 285; i++)
            {
                var panel = new Panel
                                {
                                    Header = false,
                                    Width = 60,
                                    Height = 30,
                                    BodyStyle = bkg[random.Next(0, 3)],
                                    Frame = false,
                                    StyleSpec = "padding-top: 1px; padding-left: 1px;",
                                    ID = "panel_" + i,
                                    Html = string.Format("<span class='x-unselectable'>{0}</span>", i)
                                };
                var cell = new Cell();
                cell.Items.Add(panel);
                TableLayout1.Cells.Add(cell);
            }

        }

<ext:Panel ID="pnlWorkArea" runat="server" Title="Test">
    <Body>
        <ext:TableLayout ID="TableLayout1" runat="server" Columns="15">
        </ext:TableLayout>
    </Body>
</ext:Panel>
4

1 回答 1

1

如果您的意思是您希望子面板排列完全填充中心区域,除了计算区域的内部尺寸,然后像现在一样为子面板分配固定的高度/宽度之外,没有简单的方法可以做到这一点,但根据你的测量。您可以通过处理render事件或覆盖onRender中心区域面板来做到这一点。

如果行数和列数始终相同,您可以尝试使用 % 维度,但根据我的经验,这在浏览器中并不一致(有时由于从小数百分比四舍五入到像素,您可能会出现小间隙)。

于 2010-06-04T15:12:35.967 回答