精华内容
下载资源
问答
  • [Wap]Form控件

    2008-04-26 10:45:00
    作为任意数目的控件的容器,Form 控件还表示 MobilePage 对象中控件最外面的分组。由于窗体通常包含多个控件,您可以将窗体视为能够从应用程序中浏览到的一组单独可寻址的控件。当单个窗体上具有多个控件时,ASP.NET...
    
    

    作为任意数目的控件的容器,Form 控件还表示 MobilePage 对象中控件最外面的分组。由于窗体通常包含多个控件,您可以将窗体视为能够从应用程序中浏览到的一组单独可寻址的控件。

    当单个窗体上具有多个控件时,ASP.NET 将这些控件分成用于适当目标设备的多个单元。但是,因为窗体被视为单独的叙述单元(一组单独可寻址的控件),所以 ASP.NET 不能在单个屏幕上结合多个窗体。

    移动控件语法

    必需的属性、默认值和具有代码特征的元素以粗体显示。

    <mobile:Form
       runat="server"
       id="id"
       Font-Name="fontName"
       Font-Size="{NotSet|Normal|Small|Large}"
       Font-Bold="{NotSet|False|True}"
       Font-Italic="{NotSet|False|True}"
       ForeColor="foregroundColor"
       BackColor="backgroundColor"
       Alignment="{NotSet|Left|Center|Right}"
       StyleReference="styleReference"
       Wrapping="{NotSet|Wrap|NoWrap}"
    
       Action="url"
       Method="{Post|Get}"
       OnActivate="activateHandler"
       OnDeactivate="deactivateHandler"
       OnPaginate=changeHandler"
       Paginate="{True|False}"
       Title="formTitle">
    Place child controls here. (optional)
    </mobile:Form>

    包容规则

    以下控件可以包含 Form 控件。

    控件 说明
    System.Web.UI.MobileControls.MobilePage 必须包含一个或多个 Form 控件。

    Form 控件可以包含以下控件。

    控件 说明
    System.Web.UI.MobileControls 的所有成员(MobilePageFormStyleSheet 对象除外)。 窗体可以包含任何其他 ASP.NET 移动控件(其他窗体或样式表除外)。

    窗体必须包含“控件”列中介绍的一个或多个控件。

    设备模板

    模板 说明
    页眉 页眉模板呈现在窗体的开头。在分页模式下,每页上都呈现页眉。
    页脚 页脚模板呈现在窗体的末尾。在分页模式下,每页上都呈现页脚。
    脚本 脚本模板呈现在窗体的顶部。如果窗体被分页成多个屏幕,则每个屏幕都包含脚本模板。在基于 HTML 的设备上,紧接着开始 <head> 标记之后添加脚本模板中的代码;而在基于 WML 的设备上,紧接着开始 <card> 标记之后添加。

    页眉和页脚模板可以是与设备无关的模板集的一部分。如果模板集与设备无关,则模板必须包含移动控件。

    特定于设备的行为

    如果在级联到单个控件的 Form 控件上设置了样式属性,则适用于单个控件的任何特定于设备的行为都将应用于这些样式属性。

    对于支持在控件间使用 TAB 键的设备,Tab 键顺序是由控件在页上显示的顺序或(当动态添加控件时)向页上添加控件的顺序确定的。

    设备语言 行为描述
    HTML 如果窗体定义了 Title 属性,则在文档 <head> 节的 <title> 标记中写出标题。

    如果呈现了模板,则在 <body> 标记中依次写出各个模板。

    以下代码显示 HTML 页的基本大纲。

    <head>
      <title>title</title>
    </head>
    <body>
    Add header template here.
      Add form contents here.
    Add footer template contents here.
    </body>

    您可以将上面的代码用于完全填满单个页的窗体或不进行分页的窗体。

    WML 如果窗体定义了 Title 属性,则将标题作为窗体 <card> 标记的 Title 属性写出。(在较罕见的情况下,这在某些设备上会出现意外的结果,将不在 <card> 标记中写出。)

    如果呈现了模板,则在 WML 卡片的 <p> 标记中依次写出各个模板。

    以下代码显示 WML 页的基本大纲。

    <card title="title">
    <p>
    header template
    content template or form contents
    footer template
    </p>
    </card>

    示例

    下面的示例创建一个具有两个标签的窗体。

    [Visual Basic, C#]
    <%@ Page Inherits="System.Web.UI.MobileControls.MobilePage" %>
    <%@ Register TagPrefix="mobile"
        Namespace="System.Web.UI.MobileControls"
        Assembly="System.Web.Mobile" %>
    
    <mobile:Form runat="server">
      <mobile:Label runat="server">Aardvark</mobile:Label>
      <mobile:Label runat="server">Bear</mobile:Label>
    </mobile:Form>
    展开全文
  • 而且集合元素可以是任意对象,操作也比数组灵活多。 使用集合时,必须注意集合生命期问题。如果有两个集合 L1 和 L2,使用 了 L1=L2; 后,只要 L2 生命期没有终结,它以后变化就可能会影响到 L1 数值。...
  • 时候因为不能确定Source的对象叫什么名字,但知道它与作为Binding目标的对象在UI布局上有相对关系,比方控件自己关联自己某个数据、关联自己某级容器的数据,就要使用BindingRelativeSource属性。...

    当一个Binding有明白的数据来源时能够通过为Source或ElementName赋值的办法让Binding与之关联,有的时候因为不能确定Source的对象叫什么名字,但知道它与作为Binding目标的对象在UI布局上有相对关系,比方控件自己关联自己的某个数据、关联自己某级容器的数据,就要使用Binding的RelativeSource属性。RelativeSource属性的数据类型为RelativeSource类,通过这个类的几个静态或非静态属性能够控制它搜索相对数据源的方式。

    以下这个界面是在多层布局控件中放置着一个TextBox

        <Grid x:Name="g1" Background="Red" Margin="10">
            <DockPanel x:Name="d1" Background="Orange" Margin="10">
                <Grid x:Name="g2" Background="Yellow" Margin="10">
                    <DockPanel x:Name="d2" Background="LawnGreen" Margin="10">
                        <TextBox x:Name="textBox1" FontSize="24" Margin="10"></TextBox>
                    </DockPanel>
                </Grid>
            </DockPanel>
        </Grid>

    界面截图:



    使用例如以下代码,将TextBox控件向外,从第一层開始寻找,找到的第一个Grid对象的Name与TextBox控件绑定

                RelativeSource rs = new RelativeSource();
                rs.Mode = RelativeSourceMode.FindAncestor;
                rs.AncestorLevel = 1;
                rs.AncestorType = typeof(Grid);
    
                Binding binding = new Binding();
                binding.RelativeSource = rs;
                binding.Path = new PropertyPath("Name");
                textBox1.SetBinding(TextBox.TextProperty, binding);

    AncestorLevel属性指的是以Binding目标控件为起点的层级偏移量,d2的偏移量是1,g2的偏移量是2,以此类推,AncestorType属性告诉Binding寻找哪个类型的对象作为自己的源,不是这个类型的对象会被跳过


    与之等价的XAML代码是

    Text="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorLevel=1, AncestorType={x:Type Grid}}, Path=Name}"


    转载于:https://www.cnblogs.com/blfshiye/p/4003091.html

    展开全文
  • 基本把撸过看到代码都过了一遍,此文篇幅较长,建议保存(star)再看。传送门: <a href="https://github.com/Nealyang/PersonalBlog/issues/11">Nealyang personal blog</a></strong> 前言 ...
  • RelativeSource

    2019-10-02 17:31:22
    时候由于不能确定Source的对象叫什么名字,但知道它与作为Binding目标的对象在UI布局上有相对关系,比如控件自己关联自己某个数据、关联自己某级容器的数据,就要使用BindingRelativeSource属性。...

    当一个Binding有明确的数据来源时可以通过为Source或ElementName赋值的办法让Binding与之关联,有的时候由于不能确定Source的对象叫什么名字,但知道它与作为Binding目标的对象在UI布局上有相对关系,比如控件自己关联自己的某个数据、关联自己某级容器的数据,就要使用Binding的RelativeSource属性。RelativeSource属性的数据类型为RelativeSource类,通过这个类的几个静态或非静态属性可以控制它搜索相对数据源的方式。

    下面这个界面是在多层布局控件中放置着一个TextBox

        <Grid x:Name="g1" Background="Red" Margin="10">
            <DockPanel x:Name="d1" Background="Orange" Margin="10">
                <Grid x:Name="g2" Background="Yellow" Margin="10">
                    <DockPanel x:Name="d2" Background="LawnGreen" Margin="10">
                        <TextBox x:Name="textBox1" FontSize="24" Margin="10"></TextBox>
                    </DockPanel>
                </Grid>
            </DockPanel>
        </Grid>

    使用如下代码,将TextBox控件向外,从第一层开始寻找,找到的第一个Grid对象的Name与TextBox控件绑定

                RelativeSource rs = new RelativeSource();
                rs.Mode = RelativeSourceMode.FindAncestor;
                rs.AncestorLevel = 1;
                rs.AncestorType = typeof(Grid);
    
                Binding binding = new Binding();
                binding.RelativeSource = rs;
                binding.Path = new PropertyPath("Name");
                textBox1.SetBinding(TextBox.TextProperty, binding);

    AncestorLevel属性指的是以Binding目标控件为起点的层级偏移量,d2的偏移量是1,g2的偏移量是2,以此类推,AncestorType属性告诉Binding寻找哪个类型的对象作为自己的源,不是这个类型的对象会被跳过 

    与之等价的XAML代码是

    Text="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorLevel=1, AncestorType={x:Type Grid}}, Path=Name}"

     

    转载于:https://www.cnblogs.com/sekon/p/4644479.html

    展开全文
  • 尽我所知,除了文中特别加以标注和致谢地方外,论文中包含其他人已经发表或撰写过研究成果,也包含为获得东南大学或其它教育机构学位或证书而使用过材料。与我一同工作同志对本研究所做任何贡献均已...
  • Binding之RelativeSource

    2015-03-19 10:47:33
    有时我们不能确定作为Source的对象叫什么名字,但知道它与作为Binding目标的对象在UI布局上有相对关系,比如控件自己关联自己某个数据、某级容器的数据。这时就可以用RelativeSource。 前端: xmlns=...

      有时我们不能确定作为Source的对象叫什么名字,但知道它与作为Binding目标的对象在UI布局上有相对关系,比如控件自己关联自己的某个数据、某级容器的数据。这时就可以用RelativeSource。

    前端:

    <Window x:Class="Demo.RelativeSrcDemo"
            xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
            xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
            Title="RelativeSrcDemo" Height="300" Width="300">
        <Grid x:Name="g1" Background="Red" Margin="10">
            <DockPanel x:Name="dl" Background="Orange" Margin="10">
                <Grid x:Name="g2" Background="Yellow" Margin="10">
                    <DockPanel x:Name="d2" Background="LawnGreen" Margin="10">
                        <TextBox x:Name="textBox1" FontSize="24" Margin="10"/>
                    </DockPanel>
                </Grid>
            </DockPanel>
        </Grid>
    </Window>
    

    后台:

        public partial class RelativeSrcDemo : Window
        {
            public RelativeSrcDemo()
            {
                InitializeComponent();
    
                RelativeSource rs = new RelativeSource(RelativeSourceMode.FindAncestor);
                rs.AncestorLevel = 2;//表示往上找第几个指定类型(如Grid);
                rs.AncestorType = typeof(Grid);
                Binding binding = new Binding("Name") { RelativeSource = rs };
                this.textBox1.SetBinding(TextBox.TextProperty, binding);
            }
        }
    以上方式可以通过一句话在前端实现:

    <TextBox x:Name="textBox1" FontSize="24" Margin="10" Text="{Binding RelativeSource={RelativeSource AncestorLevel=2,AncestorType=Grid,Mode=FindAncestor},Path=Name}"/>



    展开全文
  • LayoutInflater 就是这样的对象, 可以不断载入不同 Layout XML,然后找到自己的控件,添加点击事件,最后加到这个view里。 具体如下:  1.创建一个Layout XML 作为容器 里面就一个LinearLayout 作为承载其他.....
  • 实例092 不能重写方法 5.3 包装类使用 实例093 将字符串转换成整数 实例094 整数进制转换器 实例095 查看数字取值范围 实例096 ASCII编码查看器 实例097 Double类型比较 5.4 面向对象的特征 实例098...
  • 实例092 不能重写方法 5.3 包装类使用 实例093 将字符串转换成整数 实例094 整数进制转换器 实例095 查看数字取值范围 实例096 ASCII编码查看器 实例097 Double类型比较 5.4 面向对象的特征 实例098...
  • asp.net知识库

    2015-06-18 08:45:45
    如何传值在2个页面之间 :要求不刷新父页面,并且不能用Querystring传值 Asp.net地址转义(分析)加强版 Web桌面提醒(Popup) Using the Popup Object Click button only once in asp.net 2.0 Coalesys PanelBar ...
  • TList(1)

    2008-11-23 18:55:00
    1:TList是直接从TObject继承二来的一个类,不是可视控件,一般可以把它作为一个对象的容器来用。 2:TList, which stores an array of pointers, is often used to maintain lists of objects. 3:能不能说详细点,...
  • 0.使用module和RSL1.定义成static静态尽量定义为...显示慢界面控件改为绝对位置和固定宽高,尽量采用Canvas作为容器,减少容器嵌套4.延迟对象创建和初始化,尽量不要在构造函数中初始化UI,改变UI属性时,可用
  • 虽然目前文档并不能做到面面俱到,实际使用过程中坑也略多,但是填坑速度也非常快。在项目issues中提一个issue,基本都能在几个小时之内获得解答或者解决方案。因此,我决定比较系统...
  • 实例092 不能重写方法 113 5.3 包装类使用 114 实例093 将字符串转换成整数 114 实例094 整数进制转换器 115 实例095 查看数字取值范围 116 实例096 ASCII编码查看器 117 实例097 Double类型比较 118 5.4 ...
  • 实例092 不能重写方法 113 5.3 包装类使用 114 实例093 将字符串转换成整数 114 实例094 整数进制转换器 115 实例095 查看数字取值范围 116 实例096 ASCII编码查看器 117 实例097 Double类型比较 118 5.4 ...
  • 使用的对象进行清除和回收,程序员不能实时调用垃圾回收器对某个对象或所有对象进行垃圾回收。 回收机制有分代复制垃圾回收和标记垃圾回收,增量垃圾回收。 28、你所知道集合类都有哪些?区别?主要方法...
  • 9.1.1 作为对象容器的表单59 9.1.2 访问表单属性60 9.1.3 form.elements[]属性60 9.2 作为对象的表单控件60 9.2.1 文本相关输入对象61 9.2.2 按钮对象62 9.2.3 复选框对象62 9.2.4 单选按钮对象63 9.2.5 select...
  • ExtAspNet_v2.3.2_dll

    2010-09-29 14:37:08
    -修正IE7下不能以下划线作为CSS中类名前缀BUG(feedback:Steve.Wei)。 -添加定时器控件Timer,用来定时发起AJAX请求。 +2009-09-06 v2.1.0 -ButtonPressed属性值能够正确反映客户端变化。 -优化...
  • -修正IE7下不能以下划线作为CSS中类名前缀BUG(feedback:Steve.Wei)。 -添加定时器控件Timer,用来定时发起AJAX请求。 +2009-09-06 v2.1.0 -ButtonPressed属性值能够正确反映客户端变化。 -优化...
  • 消息驱动Bean必须实现两个接口MessageDrivenBean和MessageListener 在对象创建过程中将被容器调用,onMessage函数方法接收消息参数,将其强制转型为合适消息类型,同时打印出消息内容。同时一个mail note将被...

空空如也

空空如也

1 2 3 4
收藏数 72
精华内容 28
关键字:

对象不能作为控件的容器