zoukankan      html  css  js  c++  java
  • .NET自带控件 ································

     链接
     HyperLink
       <asp:HyperLink> 元素不需要包含内容,因此可以使用 /> 结束该标记,而不必使用单独的结束标记。 
     注意:
      如果同时设置了 Text 和 ImageUrl 属性,则 ImageUrl 属性优先。如果图像不可用,则显示 Text 属性中的文本。在支持“工具提示”功能的浏览器上,在将鼠标指针放在 HyperLink 控件上时将显示 Text 属性的值。通过设置 Target 属性可以指定用于显示链接页的框架或窗口。
    _blank. ...........在没有框架的新窗口中显示链接页。
    _parent............在直接框架集父级中显示链接页。
    _self................在具有焦点的框架中显示链接页。
    _top................没有框架的完全窗口中显示链接页。
    警告:
      文本在 HyperLink 控件中显示之前并非 HTML 编码形式。这使得可以在文本中的 HTML 标记中嵌入脚本。如果控件的值是由用户输入的,请务必要对输入值进行验证以防止出现安全漏洞.
    例子:
      <asp:HyperLink id="hyperlink1" ImageUrl="images/pict.jpg" NavigateUrl=http://www.microsoft.com  Text="Microsoft Official Site"   Target="_new"          runat="server"/>

    LinkButtoon
     使用 LinkButton 控件在 Web 窗体页上创建超链接样式按钮。通过设置 Text 属性或将文本放置在 LinkButton 控件的开始标记和结束标记之间,指定要在 LinkButton 控件中显示的文本。可以创建“提交”按钮或“命令”按钮。
     LinkButton 控件的外观与 HyperLink 控件相同,但其功能与 Button 控件相同。如果要在单击控件时链接到另一个网页,请使用 HyperLink 控件。
    注意:
     LinkButton 控件在客户端浏览器上呈现 JavaScript。客户端浏览器必须启用了 JavaScript,此控件才能正常运行。

    列表
    GridView   
     通过使用 GridView 控件,您可以显示、编辑和删除多种不同的数据源(例如数据库、XML 文件和公开数据的业务对象)中的数据。
    可以使用 GridView 来完成以下操作:
     通过数据源控件自动绑定和显示数据。
     通过数据源控件对数据进行选择、排序、分页、编辑和删除。

    另外,还可以通过以下方式自定义 GridView 控件的外观和行为:
     指定自定义列和样式。
     利用模板创建自定义用户界面 (UI) 元素。
     通过处理事件将自己的代码添加到 GridView 控件的功能中。

    GridView 控件提供了两个用于绑定到数据的选项:
     使用 DataSourceID 属性进行数据绑定,此选项让您能够将 GridView 控件绑定到数据源控件。建议使用此方法,因为它允许 GridView 控件利用数据源控件的功能并提供了内置的排序、分页和更新功能。
     使用 DataSource 属性进行数据绑定,此选项使您能够绑定到包括 ADO.NET 数据集和数据读取器在内的各种对象。此方法需要为所有附加功能(如排序、分页和更新)编写代码。
    GridView 控件可对其关联数据源自动执行编辑和删除操作,使您无需编写代码即可启用编辑行为。或者,也可以以编程方式控制编辑和删除数据的过程(如在 GridView 控件绑定到只读数据源控件的情况下)。

    GridView 控件提供一种简单的分页功能。可以通过使用 GridView 控件的 PagerTemplate 属性来自定义 GridView 控件的分页功能。

    它和DataGrid之间的区别

    GridView 控件是 DataGrid 控件的后继控件。与 DataGrid 控件相似,GridView 控件旨在在 HTML 表中显示数据。当绑定到数据源时,DataGrid 和 GridView 控件分别将 DataSource 中的一行显示为输出表中的一行。

    DataGrid 和 GridView 控件都是从 WebControl 类派生的。虽然 GridView 控件与 DataGrid 控件具有类似的对象模型,但与 DataGrid 控件相比,前者还具有许多新功能和优势,包括:

    • 更丰富的设计时功能。

    • 改进的数据源绑定功能。

    • 排序、分页、更新和删除的自动处理。

    • 其他列类型和设计时列操作。

    • 具有 PagerTemplate 属性的自定义页导航用户界面 (UI)。

    GridView 控件和 DataGrid 控件之间的差异包括:
     不同的自定义分页支持。
     不同的事件模型。
    使用 DataGrid 控件时,数据的排序、分页和就地编辑需要附加的编码。GridView 控件则使您无需编写任何代码即可添加排序、分页和编辑功能。实际上,可以通过在控件上设置属性来自动完成这些任务(以及诸如到数据源的数据绑定等其他常见任务)。

    Repeater
     Repeater Web 服务器控件是一个数据绑定容器控件,它生成一系列单个项。您使用模板定义网页上单个项的布局。页运行时,该控件为数据源中的每个项重复相应布局。
    由于 Repeater 控件没有默认的外观,因此可以使用该控件创建许多种列表,其中包括:
      表布局
      逗号分隔的列表(例如,a、b、c、d 等)
      XML 格式的列表

    配合模板使用Repeater控件,即创建定义控件内容布局的模板。模板可以包含标记和控件的任意组合。如果未定义模板,或者如果模板都不包含元素,则当应用程序运行时,该控件不显示在页上。
      关于绑定数据:
       最常用的数据源是数据源控件,如 SqlDataSourceObjectDataSource 控件。或者,可以将 Repeater 控件绑定到任何实现 IEnumerable 接口的类,包括 ADO.NET 数据集(DataSet 类)、数据读取器(SqlDataReader 类或 OleDbDataReader 类)或大部分集合。
       绑定数据时,您可以为 Repeater 控件整体指定一个数据源。向 Repeater 控件添加控件时(例如,向模板中添加 LabelTextBox 控件时),可以使用数据绑定语法将单个控件绑定到数据源返回的项的某个字段。

    <asp:Repeater ID="Repeater1" runat="server" DataSourceID="SqlDataSource1">
            
    <HeaderTemplate>
              
    <table>
                
    <tr>
                  
    <th>
                    Name
    </th>
                  
    <th>
                    Description
    </th>
                
    </tr>
            
    </HeaderTemplate>
            
    <ItemTemplate>
              
    <tr>
                
    <td bgcolor="#CCFFCC">
                  
    <asp:Label runat="server" ID="Label1" Text='<%# Eval("CategoryName") %>' />
                
    </td>
                
    <td bgcolor="#CCFFCC">
                  
    <asp:Label runat="server" ID="Label2" Text='<%# Eval("Description") %>' />
                
    </td>
              
    </tr>
            
    </ItemTemplate>
            
    <AlternatingItemTemplate>
              
    <tr>
                
    <td>
                  
    <asp:Label runat="server" ID="Label3" Text='<%# Eval("CategoryName") %>' />
                
    </td>
                
    <td>
                  
    <asp:Label runat="server" ID="Label4" Text='<%# Eval("Description") %>' />
                
    </td>
              
    </tr>
            
    </AlternatingItemTemplate>
            
    <FooterTemplate>
              
    </table>
            
    </FooterTemplate>
          
    </asp:Repeater>



    LoginName
      登陆控件。默认情况下,LoginName 控件显示 User 属性中包含的名称。如果 IIdentity 接口的 Name 属性为空,则不显示任何内容。Page 类的 User 属性返回一个 IPrincipal 对象,该对象公开一个返回 IIdentity 对象的 Identity 属性。
     

    <asp:LoginName id="LoginName1" runat="server" 
                   FormatString
    ="Welcome, {0}" /> 
     


     

    PlaceHolder 
      PlaceHolder Web 服务器控件使您能够将空容器控件放置到页上,然后在运行时动态添加、删除或依次通过子元素。该控件只呈现其子元素;它不具有自己的基于 HTML 的输出。
      例如,您可能想要根据用户选择的选项,在网页上显示数目可变的按钮。在该情况下,用户不面对可能导致混乱的选择,即那些要么不可用、要么与其自身需要无关的选择。

     添加实例:

    void Page_Load(object sender, EventArgs e)
    {
    Button Button1 
    = new Button();
    Button1.Text 
    = "Button 1";
    PlaceHolder1.Controls.Add(Button1);
    Literal Literal1 
    = new Literal();
    Literal1.Text 
    = "<br>";
    PlaceHolder1.Controls.Add(Literal1);
    }

    ImageMap
      创建一个控件,用于在页上显示图像。当用户单击 ImageMap 控件中定义的某个作用点区域时,该控件将回发到服务器或者定位到指定的 URL。

     BulletedList 
     
    可以将 BulletedList 控件配置为以项目符号列表项的形式显示 LinkButton 控件。当用户单击按钮时,控件将页面返回给服务器并给您运行代码以响应单击的机会。
      在“设计”视图中,双击 BulletedList 控件,然后为 BulletedList 控件的 Click 事件添加处理程序。
      在事件处理程序中,获取传递给处理程序的 BulletedListEventArgs 值的 Index 属性。
      使用索引从控件中获取合适的项,然后获取该项的 TextValue 属性。

    protected void BulletedList1_Click(object sender, 
        BulletedListEventArgs e)
    {
        ListItem li 
    = BulletedList1.Items[e.Index];
        Label1.Text 
    = "You selected = " + li.Text + ", with value = " 
            
    + li.Value;
    }

    HiddenField
     
    创建一个用于存储非显示值的隐藏字段。用于存储一个需要在各次发布到服务器时保留的值。

    Literal
     
    在要以编程方式设置文本而不添加额外的 HTML 标记时,可以向 Web 窗体页添加 Literal Web 服务器控件。在要向页面动态添加文本而不添加任何不属于该动态文本的元素时,Literal 控件是一种很有用的方式。例如,可以使用 Literal 控件来显示从一个文件或者流中读取的 HTML。
      如果想显示静态文本,可以使用 HTML 呈现它;不需要 Literal 控件。只有在需要动态更改服务器代码中的内容时才使用 Literal 控件。
    Mode属性:获取或设置一个枚举值,该值指定如何呈现 Literal 控件中的内容。

    PassThrough

    未修改控件的内容。

    Encode

    控件的内容转换为 HTML 编码的字符串。

    Transform

    从控件的内容中移除不受支持的标记语言元素。如果 Literal 控件在支持 HTML 或 XHTML 的浏览器上呈现,则不会修改该控件的内容。


    示例:

    <%@ Page Language="C#" %>
    <script runat="server">
        
    protected void Page_Load(object sender, EventArgs e)
        {
            Literal1.Text 
    = "This <b>text</b> is inserted dynamically.";
            
    if (radioEncode.Checked == true)
            {
                Literal1.Mode 
    = LiteralMode.Encode;
            }
            
    if(radioPassthrough.Checked == true)
            {
                Literal1.Mode 
    = LiteralMode.PassThrough;
            }
        }
    </script>
    </script>

    <html>
    <head runat="server"></head>
    <body>
        
    <form id="form1" runat="server">
        
    <div>
            
    <br />
            
    <asp:RadioButton 
                ID
    ="radioEncode" 
                runat
    ="server"
                GroupName
    ="LiteralMode" 
                Checked
    ="True" 
                Text
    ="Encode" 
                AutoPostBack
    ="True" />
            
    <br />
            
    <asp:RadioButton 
                ID
    ="radioPassthrough" 
                runat
    ="server" 
                GroupName
    ="LiteralMode" 
                Text
    ="PassThrough" 
                AutoPostBack
    ="True" />
            
    <br />
            
    <br />
            
    <asp:Literal ID="Literal1" runat="server"></asp:Literal>&nbsp;</div>
        
    </form>
    </body>
    </html>

    Calendar
     获取当前选定的日:

    Label1.Text = Calendar1.SelectedDate.ToShortDateString();

    获取选定的日期:

    foreach(DateTime d in Calendar1.SelectedDates)
    {
        s 
    += "<br />" + d.ToShortDateString();
    }
    Label1.Text 
    = s;

     MultiView
      MultiView 控件是一组 View 控件的容器。它允许您定义一组 View 控件,其中每个 View 控件都包含子控件。随后,您的应用程序可以根据条件(如用户标识、用户首选项以及查询字符串参数中传递的信息)向客户端呈现特定的 View 控件。您还可以使用 MultiView 控件来创建向导。在这种情况下,包含在 MultiView 控件中的每个 View 控件代表向导中的不同步骤或页。
     

  • 相关阅读:
    Git的简单使用
    git中查看全部分支的命令
    ModuleNotFoundError: No module named '__main__.base'; '__main__' is not a package(即 if __name__=='__main__'的深入理解)
    django中使用filter()(即对QuerySet操作)时踩的坑
    django模型中如何创建数据并保存到数据库
    django中使用mysql创建索引时报错MySQL does not support a database index on longtext columns
    python环境的编码
    synchronized关键字以及实例锁 类锁
    深拷贝与浅拷贝
    java String不可变对象,但StringBuffer是可变对象
  • 原文地址:https://www.cnblogs.com/Fooo/p/546748.html
Copyright © 2011-2022 走看看