zoukankan      html  css  js  c++  java
  • 扩展Asp.net中的DropDownList

       在Asp.net用户控件设计中,有时需要对某个DropDownList,和当些控件的文字进行操作。例如,隐藏。
    把文字设成LABEL可解决,但我们可以把文件包含到控件中。对DropDownList进行扩展,举一反三
    可以扩展其它控件,可以也增加其它属性,如Css样式。具体代码如下:
     1     #region XDropDownList
     2     /// <summary>
     3     /// 辅助的XDropDownList
     4     /// <remarks>便于组件中隐藏控件,文字与控件同时进行控制。
     5     /// Author:Petter Liu  http://wintersun.cnblogs.com
     6     /// </remarks>
     7     /// <example>
     8     /// <![CDATA[
     9     /// <%@ Register Assembly="Utility" Namespace="Utility.Controls" TagPrefix="diycontrol" %>
    10     /// <diycontrol:XDropDownList ID="DdlProduct" runat="server" FrontText="产品一:" Width="120px" />
    11     /// ]]>
    12     /// </example>
    13     /// </summary>
    14     [AspNetHostingPermission(SecurityAction.Demand,
    15     Level = AspNetHostingPermissionLevel.Minimal),
    16     AspNetHostingPermission(SecurityAction.InheritanceDemand,
    17     Level = AspNetHostingPermissionLevel.Minimal),
    18     DefaultProperty("FrontText"),
    19     ToolboxData("<{0}:XDropDownList runat=\"server\"> </{0}:XDropDownList>")]
    20     public class XDropDownList : DropDownList
    21     {
    22         #region Properties
    23         /// <summary>
    24         /// Gets or sets the front text.
    25         /// </summary>
    26         /// <value>The front text.</value>
    27         [Bindable(true),
    28         Category("Appearance"),
    29         DefaultValue(""),
    30         Description("Before DropDownList Text"),
    31         Localizable(true)]
    32         public virtual string FrontText
    33         {
    34             get
    35             {
    36                 string s = (string)ViewState["FrontText"];
    37                 return (s == null? String.Empty : s;
    38             }
    39             set
    40             {
    41                 ViewState["FrontText"= value;
    42             }
    43         }
    44         #endregion
    45 
    46         #region override void RenderBeginTag(HtmlTextWriter writer)
    47         /// <summary>
    48         /// Renders the HTML opening tag of the control to the specified writer. This method is used primarily by control developers.
    49         /// </summary>
    50         /// <param name="writer"><see cref="T:System.Web.UI.HtmlTextWriter"></see> that represents the output stream to render HTML content on the client.</param>
    51         public override void RenderBeginTag(HtmlTextWriter writer)
    52         {
    53             if (!string.IsNullOrEmpty(FrontText))
    54                 writer.Write(FrontText);
    55             base.RenderBeginTag(writer);
    56         }
    57         #endregion
    58     }
    59     #endregion
    http://www.cnblogs.com/wintersun
  • 相关阅读:
    Delphi 字符串操作
    SQL Browser (数据浏览器)
    .NET 3.5和VS 2008中的ASP.NET AJAX(转帖)
    delphi 最快速编码 URLDecode URLEncode
    Delphi 2007 如何安装控件
    Delphi TWebBrowser编程简述(转帖)
    delphi TStringList的用法
    Javascript+xmlhttp调用Webservice以及注意事项
    使用VSS 的Shadow folder的一点问题
    delphi 如何将XML格式的字符串导入ClientDataSet中
  • 原文地址:https://www.cnblogs.com/wintersun/p/1013873.html
Copyright © 2011-2022 走看看