Panel()

1.使用Content和Html属性设置Panel内容

前台View代码

@(X.Panel()
        .ID("panel1")
        .Width()
        .Height()
        .Title("Html")
        .BodyPadding()
        .Content(c=>DateTime.Now.ToString())
        .Buttons(
            X.Button()
            .Text("使用Content属性")
            .DirectEvents(de =>
            {
                de.Click.Url = Url.Action("SetHtmlProperty");
                de.Click.ExtraParams.Add(new Parameter("containerId", "panel1"));
            })
        )
    )

按钮Click事件后台代码

public ActionResult SetHtmlProperty(string containerId)
{
    this.GetCmp<Panel>(containerId).Html = DateTime.Now.ToString();
    return this.Direct();
}

2.使用Loader的Html模式从服务器获取Panel内容

View中的代码

@(X.Panel()
    .ID("panel2")
    .Width()
    .Height()
    .Title("Loader with Html mode")
    .BodyPadding()
    .Loader(
        X.ComponentLoader()
        .Url(Url.Action("RenderChild"))
        .Mode(LoadMode.Html)
        .LoadMask(lm=>lm.ShowMask = true)
    )
    .Buttons(
        X.Button()
        .Text("SetLoaderProperty")
        .DirectEvents(de =>
        {
            de.Click.Url = Url.Action("SetLoaderProperty");
            de.Click.Method = HttpMethod.GET;
            de.Click.ExtraParams.Add(new Parameter("containerId", "panel2"));
        }),
        X.Button()
        .Text("LoadHtmlContent")
        .DirectEvents(de =>
        {
            de.Click.Url = Url.Action("LoadHtmlContent");
            de.Click.ExtraParams.Add(new Parameter("containerId", "panel2"));
        })
    )
)

后台Button事件

public ActionResult SetLoaderProperty(string containerId)
{
    var panel = this.GetCmp<Panel>(containerId);
    panel.Loader = new ComponentLoader
    {
        Url = Url.Action("RenderChild"),
        DisableCaching = true
    };
    panel.Loader.SuspendScripting();
    panel.LoadContent();

    return this.Direct();
}

public ActionResult LoadHtmlContent(string containerId)
{
    this.GetCmp<Panel>(containerId).LoadContent("RenderChild", true);
    return this.Direct();
}

3.使用Loader的Frame模式从服务器获取Panel内容

View中代码

@(X.Panel()
    .ID("panel3")
    .Width()
    .Height()
    .Title("Loader with Frame mode")
    .BodyPadding()
    .Loader(
        X.ComponentLoader()
        .Url(Url.Action("RenderChild"))
        .Mode(LoadMode.Frame)
        .LoadMask(lm=>lm.ShowMask = true)
    )
    .Buttons(
        X.Button()
        .Text("SetIFrameLoadProperty")
        .DirectEvents(de =>
        {
            de.Click.Url = Url.Action("SetIFrameLoadProperty");
            de.Click.Method = HttpMethod.GET;
            de.Click.ExtraParams.Add(new Parameter("containerId", "panel3"));
        }),
        X.Button()
            .Text("LoadIFrameContent")
            .DirectEvents(de =>
            {
                de.Click.Url = Url.Action("LoadIFrameContent");
                de.Click.ExtraParams.Add(new Parameter("containerId", "panel3"));
            })
    )
)

后台Button事件

public ActionResult SetIFrameLoadProperty(string containerId)
{
    Panel panel = this.GetCmp<Panel>(containerId);
    panel.Loader = new ComponentLoader
    {
        Url = Url.Action("RenderChild"),
        DisableCaching = true,
        Mode = LoadMode.Frame
    };
    panel.Loader.SuspendScripting();
    panel.LoadContent();
    return this.Direct();
}

public ActionResult LoadIFrameContent(string containerId)
{
    this.GetCmp<Panel>(containerId).LoadContent(new ComponentLoader
    {
        Url = Url.Action("RenderChild"),
        DisableCaching = true,
        Mode = LoadMode.Frame
    });
    return this.Direct();
}

Ext.Net 学习随笔 003 Panel基本使用的更多相关文章

  1. Ext.Net 学习随笔 003 超链接按钮

    HyperlinkButton() 1.不带图标的普通超链接按钮 @(X.HyperlinkButton() .Text("简单样式") .OnClientClick(" ...

  2. Ext.Net 学习随笔 001 安装Ext.Net

    Ext.Net版本:4.1.0 Ext.Net官网:ext.net Ext.Net官方演示:mvc.ext.net Ext.Net MVC Example 下载:github.com/extnet/E ...

  3. Ext.Net 学习随笔 002 默认按钮

    在FormPanel中按回车按键,会触发默认按钮的click事件.设置方法为在FormPanel中设置DefaultButton属性,如果没有设置这个属性,默认为最后一个按钮. 1.缺省最后一个按钮为 ...

  4. 【Ext.Net学习笔记】04:Ext.Net中使用数据、Ext.Net Store的用法、Ext.Net ComboBox用法

    之前的几篇文章都是介绍Ext.Net较为基础的东西,今天的这一篇将介绍数据的一些用法,包括XTemplate绑定数据.Store(Modal.Proxy).ComboBox的用法等. XTemplat ...

  5. 【Ext.Net学习笔记】02:Ext.Net用法概览、Ext.Net MessageBus用法、Ext.Net布局

    Ext.Net用法概览 Ext.Net还是很强大,如果运用熟练可以极大的提高编程效率.如果你也要学习Ext.Net,原文博主推荐书籍:<Ext.Net Web 应用程序开发教程>,是英文的 ...

  6. Ext.Net学习笔记22:Ext.Net Tree 用法详解

    Ext.Net学习笔记22:Ext.Net Tree 用法详解 上面的图片是一个简单的树,使用Ext.Net来创建这样的树结构非常简单,代码如下: <ext:TreePanel runat=&q ...

  7. Ext.Net学习笔记23:Ext.Net TabPanel用法详解

    Ext.Net学习笔记23:Ext.Net TabPanel用法详解 上面的图片中给出了TabPanel的一个效果图,我们来看一下代码: <ext:TabPanel runat="se ...

  8. 【Ext.Net学习笔记】06:Ext.Net GridPanel的用法(GridPanel 折叠/展开行、GridPanel Selection、 可编辑的GridPanel)

    GridPanel 折叠/展开行 Ext.Net GridPanel的行支持折叠/展开功能,这个功能个人觉得还说很有用处的,尤其是数据中包含图片等内容的时候. 下面来看看效果: 使用行折叠/展开功能之 ...

  9. 【Ext.Net学习笔记】05:Ext.Net GridPanel的用法(包含Filter、Sorter、Grouping、汇总(Summary)的用法)

    GridPanel是用来显示数据的表格,与ASP.NET中的GridView类似. GridPanel用法 直接看代码: <ext:GridPanel runat="server&qu ...

随机推荐

  1. 常用的CSS定位,XPath定位和JPath定位

    CSS定位 举例 描述 div#menu id为menu的div元素 div.action-btn.ok-btn class为action-btn和ok-btn的div元素 table#emailLi ...

  2. Java泛型学习笔记 - (一)泛型的介绍

    一.什么是泛型:泛型的作用是用来规定一个类, 接口或方法所能接受的数据的类型. 就像在声明方法时指定参数一样, 我们在声明一个类, 接口或方法时, 也可以指定其"类型参数", 也就 ...

  3. 一些pc端web事件移动端不再可行

    1.onkeyUp,onkeyDown,onkeyPress等事件不再管用,要用oninput代替   2.onclick事件会有延迟,因为手机需要等待判断是否是双击事件(ondblclick).所以 ...

  4. md5应用

    /* md5工具类 */ public class MD5Util { /**全局数组**/ private final static String[] strDigits = { "0&q ...

  5. Why sql is called structured query language?1 - 12

    SQL has much to do with a researcher at IBM, Edgar F. (Ted) Codd, an Oxford-trained mathematician, w ...

  6. sqoop笔记

    adoop学习笔记—18.Sqoop框架学习   一.Sqoop基础:连接关系型数据库与Hadoop的桥梁 1.1 Sqoop的基本概念 Hadoop正成为企业用于大数据分析的最热门选择,但想将你的数 ...

  7. cocoapod安装过程中的幺蛾子

    cocoapod是GoogleMobileAd framework推荐的一个自动解决依赖关系的工具.   安装cocoapod时遇到问题: EthandeMacBook-Air:Xcode ethan ...

  8. 【转】Thread.sleep(0)的意义

    Thread.sleep(0)的意义 2012-03-23 17:47 2188人阅读 评论(2) 收藏 举报 windows算法unixthread 我们可能经常会用到 Thread.Sleep 函 ...

  9. line-height的一点粗浅认识

    line-height:有5种不同类型的单位. line-height: normal|inherit(继承)|%(百分比)|20px(像素值)|1.2(倍数); 将行高和字体大小结合: body { ...

  10. SQL盲注之正则攻击

    我们都已经知道,在MYSQL 5+中 information_schema库中存储了所有的 库名,表明以及字段名信息.故攻击方式如下: 1. 判断第一个表名的第一个字符是否是a-z中的字符,其中bli ...