【问题标题】:ASP.NET - Iframe Equivalent to Display Multiple Gridviews using Ajax or UpdatePanelASP.NET - 等效于使用 Ajax 或 UpdatePanel 显示多个 Gridview 的 Iframe
【发布时间】:2011-05-06 20:23:01
【问题描述】:

问题:

  • 在 ASP.NET 中是否有 HTML 的 IFrame 等效项?
  • 如果是这样,您能否提供一些示例代码来说明如何实现?
  • 尝试将以下 Access VBA 运行时转换为 ASP.NET 页面的最佳方法是什么?

这是 Access 运行时应用程序的屏幕截图:

用户选择搜索条件:

  • 状态
  • 邮政编码
  • 计划代码(D、F、G、M、N)
  • 运营商名称(可选)

男性/女性最低费率表显示:

  • 最低费率
  • 运营商名称
  • 每个受保年龄(65、70、75 和 80 岁)

所有费率表显示:

  • 所有运营商名称
  • 被保险人年龄(65、70、75 和 80 岁)
  • 男性和女性的费率成本

运营商信息表(当用户点击运营商名称时)显示:

  • 第 1 年街道补偿
  • 保单费
  • 配偶折扣
  • 网站
  • 保险费率生效日期
  • 保险费率变化历史

任何有用的答案都会获得投票! 感谢收看!

【问题讨论】:

    标签: asp.net ajax gridview iframe updatepanel


    【解决方案1】:

    在我看来就像一堆定位的divs,使用 CSS 应该是可行的。也可能使用UpdatePanels。

    HTML 和 CSS 示例

    注意,这是一个快速入门的示例,但可能并不完美!

    <?DOCTYPE html>
    
    <html xml:lang="en-us" lang="en-us">
        <head>
            <title>Test</title>
            <style type="text/css">
                html, body
                {
                    margin: 0;
                    width: 100%;
                    height: 100%;
                }
    
                div
                {
                    border: 1px solid Green;
                }
    
                div#Page
                {
                    display: table;
                    width: 100%;
                    height: 80%;
                }
    
                div#Top
                {
                    display: table-row;
                }
    
                div#Top div#Left,
                div#Top div#Middle,
                div#Top div#Right
                {
                    display: table-cell;
                    width: 33%;
                }
    
                div#Top div#Left div#Logo
                {
                    height: 100px;
                }
    
                div#Bottom
                {
                    height: 20%;
                }
            </style>
        </head>
        <body>
            <div id="Page">
                <div id="Top">
                    <div id="Left">
                        <div id="Logo">
                            Logo Here
                        </div>
                        Carrier...
                    </div>
                    <div id="Middle">
                        Search
                    </div>
                    <div id="Right">
                        The red stuff...
                    </div>
                </div>
            </div>
            <div id="Bottom">
                Grid...
            </div>
        </body>
    </html>
    

    结果

    【讨论】:

    • 感谢您的回复。你能给我一些示例代码吗?
    • 我如何将此代码合并到现有的 CSS - #Table1 { height: 119px;宽度:33%; } .style2 { 高度:39px;宽度:15%; } .style3 { 宽度:15%; } .style4 { 高度:39px;宽度:28%; } .style5 { 宽度:28%; } .style6 { 高度:20px;宽度:15%; } .style7 { 高度:20px;宽度:28%; }
    • 我建议您将其作为一个单独的问题提出......然后接受这个作为对您有帮助的答案。 ;-)
    【解决方案2】:

    http://www.ext.net/ 上查看示例。他们有很多 ASP.NET 控件,如果您不习惯自己处理大量 HTML/CSS,您可能会发现使用这些控件更容易。具体来说,检查视口(但其他人也会适用)--http://examples.ext.net/#/ViewPort/Basic/Built_in_CodeBehind/

    【讨论】:

    • 感谢您的回复。你有更具体的代码示例或建议吗?
    • 您还可以查看 UFrame -- codeproject.com/KB/aspnet/uframe.aspx 了解处理 IFrame 的一种很酷的方法。
    • ext.net 中有很多扩展,我不确定哪个最好用。你会推荐哪些最好的 ext.net 插件/控件来解决这个问题,我将如何将它们添加到代码中?我下载了 Ext.NET 1.0 RC1 社区版 Zip 文件并手动将控件添加到 VS 工具箱
    • 如果您下载示例或转到examples.ext.net/#/ViewPort/Basic/Built_in_Markup 并单击左上角的“源代码”,您可以看到用于创建示例的标记。这些区域被定义为“北、南、东和西”,使布局非常简单。我建议下载示例并使用标记来尝试获得接近你想要的东西。如果你拖动来自 VS 工具箱的 ViewPort 控件,它应该自动将所需的“注册”语句添加到您的 ASPX 页面(示例已经准备就绪)
    【解决方案3】:

    就个人而言,我对 DevExpress 的(商业)ASPxSplitter control 有很好的体验。

    【讨论】:

    • 感谢您的回复。你有更具体的代码示例或建议吗?
    • @Brian 在我链接到的页面上,有 9 个关于如何使用拆分器的不同示例。对我来说,这就足够了。您可以随时在 DevExpress 支持论坛中提出更多问题。
    猜你喜欢
    • 2012-11-06
    • 1970-01-01
    • 1970-01-01
    • 2011-01-31
    • 1970-01-01
    • 2012-03-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多