zoukankan      html  css  js  c++  java
  • .NET在WebForm里实现类似WinForm里面TrackBar控件的效果(AJAX Control Toolkit的使用)

      WinForm 里面有一个 TrackBar 控件,表示一个标准的 Windows 跟踪条,是类似于 ScrollBar 控件的可滚动控件。用这个控件可以实现很多可以实时调整的功能,比如最常见的音量调节,播放进度调节等,很方便。但是,在 WebForm 里面没有类似的控件。那么在 WebForm 里要实现这样的功能怎么办呢?

      这里介绍一种简单高效的方法。其实就是使用 AJAX Control Toolkit 里面的 SliderExtender 控件。

      要想在 VS 里使用 AJAX Control Toolkit 的控件,最简单的方法是在项目里添加引用。首先,要获得 AjaxControlToolkit.dll 和 AjaxControlToolkit.pdb。然后在工具栏中新添加一个选项卡起名:AjaxControltoolkit,在这个选项卡上右键选择项->浏览找到 AjaxControlToolkit.dll,添加进来。这样就把 AJAX Control Toolkit 控件成功引用到 VS 中了。接下来就可以像使用其他工具栏中的控件一样使用 AJAX Control Toolkit 的控件了。

      AJAX Control Toolkit 控件里面有个 ToolkitScriptManager,要使用其他控件前先要添加这个,而且必须放在所有 AJAX Control Toolkit 控件的前面。具体使用SliderExtender 控件的方法见代码。

      前台代码:  

     1 <ajaxToolkit:ToolkitScriptManager id="ScriptManager1" runat="server" EnablePartialRendering="true" />
     2 <table>
     3   <tr>
     4     <td style=" 140px;">
     5       <asp:TextBox ID="Slider1" runat="server" AutoPostBack="true" Style="right: 0px" Text="0" />
     6        </td>
     7        <td style=" 15px">
     8        </td>
     9        <td style=" auto">
    10          <asp:Label ID="Slider1_BoundControl" runat="server" Style="text-align: right" />
    11        </td>
    12   </tr>
    13   <tr>
    14     <td colspan="3">
    15          <div style="padding-top: 10px; text-align: center">
    16             <asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="conditional">
    17           <ContentTemplate>
    18                    <asp:Label ID="lblUpdateDate" runat="server" Style="font-size: 80%;" Text="&nbsp;" />
    19                  </ContentTemplate>
    20                  <Triggers>
    21                    <asp:AsyncPostBackTrigger ControlID="Slider1" EventName="TextChanged" />
    22                  </Triggers>
    23         </asp:UpdatePanel>
    24       </div>
    25     </td>
    26   </tr>
    27 </table>
    28 <ajaxToolkit:SliderExtender ID="SliderExtender1" runat="server" BehaviorID="Slider1"
    29   TargetControlID="Slider1" Minimum="-100" Maximum="100" BoundControlID="Slider1_BoundControl"
    30   Steps="200" />

      后台代码:

    1         protected void Page_Load(object sender, EventArgs e)
    2         {            
    3             ScriptManager1.RegisterAsyncPostBackControl(Slider1);
    4 
    5             if (Page.IsPostBack)
    6             {
    7                 lblUpdateDate.Text = "Changed at: " + DateTime.Now.ToLongTimeString();
    8             }
    9         }

      效果截图:

        

  • 相关阅读:
    Redis 高级数据结构:五、哈希对象
    Redis 高级数据结构:四、列表对象
    Redis 高级数据结构:三、字符串对象
    Redis 高级数据结构:二、简介
    总结1
    Windows程序代码重构
    Windows应用程序结构
    事件、消息循环和窗口函数
    窗口的创建和显示
    Windows的数据类型
  • 原文地址:https://www.cnblogs.com/roming/p/3493107.html
Copyright © 2011-2022 走看看