• altas(ajax)控件(二十二):帮助用户输入的面板控件PopupControl


     
    一、      简介
       
     Popupcontrol可以弹出任意类型的控件,不管是在服务器控件还是html控件。就是在某控件获取焦点时弹出另外一个控件,进行一些操作后,隐藏弹出的控件。
    二、      属性说明

    属性
    说明
    TargetControlID
    需要弹出的控件的id,一般为TextBox
    PopupControlID
    作为弹出控件的id,一般为Panel
    Position
    弹出控件的位置
    OffsetX/OffsetY
    弹出控件的位置与默认位置的相对坐标
    CommitProperty
    目标控件的客户端属性,这个属性是它的值在弹出窗口选择完值后要更新的属性,比如可以是TextBox客户端属性value(注:不是Text属性),即是<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>生成HTML标签<input type="text" name="textfield" value="aa">后的属性value。
    CommitScript
    提交后执行的脚本

     
    三、       实例

        实例
    1
    打开vs2005,新建一个AjaxControlToolKit网站,命名为AjaxPopupControl
    2
    打开默认生成的Default.aspx页面,切换到窗体的设计视图

    3
    在页面中拽一个UpdatePanel,一个PopupControlExtender,一个TextBox和一个RadioButtonList控件
    4
    设置PopupcontrolExtender控件的属性,要求当文本框获得焦点时再其右侧弹出RadioButtonList控件,如下 

     <asp:TextBox ID="MessageTextBox" runat="server" Width="200" autocomplete="off" /><br /><br />
            
    <asp:Panel ID="Panel2" runat="server" CssClass="popupControl">
                
    <div style="border: 1px outset white;  100px">
                    
    <asp:UpdatePanel runat="server" ID="up2">
                        
    <ContentTemplate>
                            
    <asp:RadioButtonList ID="RadioButtonList1" runat="server" AutoPostBack="true"
                                OnSelectedIndexChanged
    ="RadioButtonList1_SelectedIndexChanged">
                                    
    <asp:ListItem Text="Walk dog" />
                                    
    <asp:ListItem Text="Feed dog" />
                                    
    <asp:ListItem Text="Feed cat" />
                                    
    <asp:ListItem Text="Feed fish" />
                                    
    <asp:ListItem Text="Cancel" Value="" />
                            
    </asp:RadioButtonList>
                        
    </ContentTemplate>
                    
    </asp:UpdatePanel>
                
    </div>
            
    </asp:Panel>
            
    <ajaxToolkit:PopupControlExtender ID="PopupControlExtender2" runat="server"
                TargetControlID
    ="MessageTextBox"
                PopupControlID
    ="Panel2"
                CommitProperty
    ="value"
                Position
    ="Bottom"
                CommitScript
    ="e.value += ' - do not forget!';" />

      5 RadioButtonList控件的SelectedIndexChanged事件中添加代码,让选择日期后能将选择的日期显示在文本框中,如下

        protected void RadioButtonList1_SelectedIndexChanged(object sender, EventArgs e)
        
    {
            
    if (!string
    .IsNullOrEmpty(RadioButtonList1.SelectedValue))
            
    {
                
    // 这里需要注意,执行选择操作

                PopupControlExtender2.Commit(RadioButtonList1.SelectedValue);
            }

            
    else
            
    {
                
    // 取消操作

                PopupControlExtender2.Cancel();
            }

        }

    6 保存设计,运行程序,效果:

    效果如下:

     

  • 相关阅读:
    通过系统配置来提高ASP.NET应用程序的稳定性
    设置localhost文件
    打击啊,看过的东西怎么就记不住呢???
    用.Net开发Windows服务初探
    在项目中设立里程碑有哪些好处&基础架构的开发任务&试运行的部署
    C#中构造函数和析构函数的用法
    ASP.NET1.0升级ASP.NET2.0的问题总结
    误删Oracle数据库实例的控制文件
    Embedding Google Earth in a C# Application (转载)
    教你如何克隆Oracle 10g数据库,冷备份方式(图文版)(转载)
  • 原文地址:https://www.cnblogs.com/hainange/p/6153322.html
Copyright © 2020-2023  润新知