Asp.net 创建内部带有面板的自动缩放面板

Asp.net 创建内部带有面板的自动缩放面板,asp.net,extjs,coolite,Asp.net,Extjs,Coolite,很抱歉,问题标题不太清楚,但可能图片有助于描述我的问题: 我希望父面板中的小子面板可以自动调整大小。以下是我的标记和代码隐藏: protected void Page_Load(object sender, EventArgs e) { var bkg = new[] { "background-color: wheat;", "background-color: gray;", "background-color: #AAAAAA;" };

很抱歉,问题标题不太清楚,但可能图片有助于描述我的问题:


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

    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>
受保护的无效页面加载(对象发送方,事件参数e)
{
var bkg=new[]{“背景色:小麦;”,“背景色:灰色;”,“背景色:#AAAAAA;”;
var random=新的random();
对于(变量i=0;i<285;i++)
{
var面板=新面板
{
Header=false,
宽度=60,
高度=30,
BodyStyle=bkg[random.Next(0,3)],
帧=假,
StyleSpec=“顶部填充:1px;左侧填充:1px;”,
ID=“面板”+i,
Html=string.Format(“{0}”,i)
};
变量单元格=新单元格();
单元格.项目.添加(面板);
TableLayout1.Cells.Add(单元格);
}
}

如果您的意思是希望子面板排列完全填充中心区域,那么除了计算区域的内部尺寸,然后根据您的测量值为子面板指定固定的高度/宽度之外,没有其他简单的方法。您可以通过处理
render
事件或覆盖中央区域面板的
onRender
来完成此操作


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

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

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