• .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         }

      效果截图:

        

  • 相关阅读:
    基于TMS320C6678、FPGA XC5VLX110T的6U CPCI 8路光纤信号处理卡
    KC705E 增强版 基于FMC接口的Xilinx Kintex7 FPGA K7 XC7K325T PCIeX8 接口卡
    基于Xilinx Kintex7 FPGA K7 XC7K325T PCIeX8 四路光纤卡
    IOS常用API
    数学和物理的公式
    [cocos2d]如何实现模态对话框
    使用加速器实现的定位算法
    cocos2d 粒子设计器
    陀螺仪操作摄相机,可以旋转,但角度(轴)还不对
    gluLookAt 的参数
  • 原文地址:https://www.cnblogs.com/roming/p/3493107.html
Copyright © 2020-2023  润新知