问题:日历dayrender事件触发后文本框值不可见 [英] Problem: Textbox value not visible after calendar dayrender event fire

查看:59
本文介绍了问题:日历dayrender事件触发后文本框值不可见的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述





我正在搞clendar,在这里我有日历投降活动。



在dayrender事件中我分配了textbox1.Text =test;但在完成dayrender活动后它是不可见的?



我的代码是



<表> 
< tr>
< td>
< / td>
< td>
< asp:TextBox ID =TextBox1runat =server>< / asp:TextBox>
< / td>
< / tr>
< tr>
< td>
< / td>
< td>
< asp:Calendar ID =AttenCalendarrunat =serverBackColor =WhiteBorderColor =SteelBlue
BorderWidth =1pxFont-Names =VerdanaFont-Size = 9ptForeColor =BlackHeight =275px
Width =100%FirstDayOfWeek =SundayNextMonthText =Next> PrevMonthText =< Prev
NextPrevFormat =ShortMonthShowGridLines =falseBorderStyle =NoneCssClass =monthCalendar
OnDayRender =AttenCalendar_DayRenderSelectionMode =NoneDayNameFormat =FirstLetter
OtherMonthDayStyle-CssClass =otherMonthStyleDayStyle-CssClass =dayStyleDayHeaderStyle-CssClass =dayHeaderStyle
WeekendDayStyle-CssClass =weekendDayStyleTodayDayStyle-CssClass =todayStyle
TitleStyle-CssClass = weekendDayStyle >
<% - < TitleStyle BorderColor =SteelBlueBorderWidth =1pxFont-Bold =TrueFont-Size =10pt
Height =40pxBackColor =White ForeColor =BlackHorizo​​ntalAlign =CenterVerticalAlign =Middle/> - %>
< / asp:日历>
< / td>
< / tr>
< / table>





使用System; 
使用System.Collections.Generic;
使用System.Linq;
使用System.Web;
使用System.Web.UI;
使用System.Web.UI.WebControls;

public partial class Default3:System.Web.UI.Page
{
protected void Page_Load(object sender,EventArgs e)
{

}
protected void AttenCalendar_DayRender(对象发送者,DayRenderEventArgs e)
{
TextBox1.Text =hi;
}
}





我可能知道这有什么问题吗?



提前致谢........

解决方案

这可能是一个错误。在我发现当我将TextBox1从AttenCalendar控件的上方移动到下面时,然后分配并显示值。

当我使用下面的代码时

< pre lang =xml> < div >
< asp:TextBox ID = txtId runat = 服务器 > < / asp:TextBox >
< < span class =code-leadattribute> / div >
< div >
< asp:Calendar ID = AttenCalendar runat = 服务器 BackColor = 白色 BorderColor = SteelBlue

< span class =code-attribute> BorderWidth = 1px 字体名称 = Verdana 字体-Size = 9pt ForeColor = 黑色 < span class =code-attribute> 高度 = 275px

< span class =code-attribute> 宽度 = 100% FirstDayOfWeek < span class =code-keyword> = 星期日 NextMonthText = 下一页> PrevMonthText = < ;上一页

NextPrevFormat = ShortMonth ShowGridLines = < span class =code-keyword> false BorderStyle = CssClass = monthCalendar

< span class =code-attribute> < span class =code-attribute> OnDayRender = AttenCalendar_DayRender SelectionMode = DayNameFormat = FirstLetter

< span class =code-attribute> OtherMonthDayStyle-CssClass =
otherMonthStyle DayStyle-CssClass < span class =code-keyword> = dayStyle DayHeaderStyle-CssClass = dayHeaderStyle

WeekendDayStyle-CssClass = weekendDayStyle TodayDayStyle-CssClass = todayStyle

< span class =code-attribute> TitleStyle-CssClass
= weekendDayStyle >
< / asp:Calendar >
< / div >





未分配文本框值/由DayRender事件处理程序显示。

  protected   void  AttenCalendar_DayRender(对象发​​件人,DayRe nderEventArgs e)
{
txtId.Text = hi;
}





但是当我的标记如下(只是textbox1是Calender控件的下方)时,同样的事情被分配了/>

 <   div  >  
< asp:Calendar ID = AttenCalendar runat = server BackColor < span class =code-keyword> = 白色 BorderColor = SteelBlue

< span class =code-attribute> BorderWidth = 1px 字体名称 = Verdana 字体 - 大小 = 9pt ForeColor = 黑色 高度 = 275px

< span class =code-attribute> 宽度 = 100% FirstDayOfWeek = 星期日 NextMonthText = 下一页> PrevMonthText = <上一页

NextPrevFormat = ShortMonth ShowGridLines = < span class =code-keyword> false BorderStyle = CssClass = monthCalendar

< span class =code-attribute> < span class =code-attribute> OnDayRender = AttenCalendar_DayRender SelectionMode = DayNameFormat = FirstLetter

< span class =code-attribute> OtherMonthDayStyle-CssClass = otherMonthStyle DayStyle-CssClass < span class =code-keyword> = dayStyle DayHeaderStyle-CssClass = dayHeaderStyle

WeekendDayStyle-CssClass = weekendDayStyle TodayDayStyle-CssClass = todayStyle

< span class =code-attribute> TitleStyle-CssClass
= weekendDayStyle >
< / asp:Calendar >
< / div >
< div >
< asp:TextBox ID = txtId runat = server > < / asp:TextBox >
< / div >



它已分配并显示在我的页面上。


Hi,

I am working on clendar, in this I have calendar dayrender event is there.

in dayrender event I am assign textbox1.Text="test"; but it is not visible after completing dayrender event?

my code is

<table>
                   <tr>
                       <td>
                       </td>
                       <td>
                           <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
                       </td>
                   </tr>
                   <tr>
                       <td>
                       </td>
                       <td>
                           <asp:Calendar ID="AttenCalendar" runat="server" BackColor="White" BorderColor="SteelBlue"
                               BorderWidth="1px" Font-Names="Verdana" Font-Size="9pt" ForeColor="Black" Height="275px"
                               Width="100%" FirstDayOfWeek="Sunday" NextMonthText="Next >" PrevMonthText="< Prev"
                               NextPrevFormat="ShortMonth" ShowGridLines="false" BorderStyle="None" CssClass="monthCalendar"
                               OnDayRender="AttenCalendar_DayRender" SelectionMode="None" DayNameFormat="FirstLetter"
                               OtherMonthDayStyle-CssClass="otherMonthStyle" DayStyle-CssClass="dayStyle" DayHeaderStyle-CssClass="dayHeaderStyle"
                               WeekendDayStyle-CssClass="weekendDayStyle" TodayDayStyle-CssClass="todayStyle"
                               TitleStyle-CssClass="weekendDayStyle">
                               <%-- <TitleStyle BorderColor="SteelBlue" BorderWidth="1px" Font-Bold="True" Font-Size="10pt"
                                           Height="40px" BackColor="White" ForeColor="Black" HorizontalAlign="Center" VerticalAlign="Middle" />--%>
                           </asp:Calendar>
                       </td>
                   </tr>
               </table>



using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class Default3 : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }
    protected void AttenCalendar_DayRender(object sender, DayRenderEventArgs e)
    {
        TextBox1.Text = "hi";
    }
}



may I know what''s wrong in this?

Thanks in advance........

解决方案

It might be a bug. After little rnd i found that when I move your TextBox1 from above of the AttenCalendar control to bellow, then value is assigned and displayed.
when I use the bellow code

<div>
        <asp:TextBox ID="txtId" runat="server"></asp:TextBox>
    </div>
    <div>
        <asp:Calendar ID="AttenCalendar" runat="server" BackColor="White" BorderColor="SteelBlue"

                                BorderWidth="1px" Font-Names="Verdana" Font-Size="9pt" ForeColor="Black" Height="275px"

                                Width="100%" FirstDayOfWeek="Sunday" NextMonthText="Next >" PrevMonthText="< Prev"

                                NextPrevFormat="ShortMonth" ShowGridLines="false" BorderStyle="None" CssClass="monthCalendar"

                                OnDayRender="AttenCalendar_DayRender" SelectionMode="None" DayNameFormat="FirstLetter"

                                OtherMonthDayStyle-CssClass="otherMonthStyle" DayStyle-CssClass="dayStyle" DayHeaderStyle-CssClass="dayHeaderStyle"

                                WeekendDayStyle-CssClass="weekendDayStyle" TodayDayStyle-CssClass="todayStyle"

                                TitleStyle-CssClass="weekendDayStyle">
      </asp:Calendar>
    </div>



The textbox value is not assigned/displayed by DayRender event handler.

protected void AttenCalendar_DayRender(object sender, DayRenderEventArgs e)
       {
           txtId.Text ="hi";
       }



But same thing is assigned when my markup like as follows(just textbox1 is bellow of Calender control)

<div>
        <asp:Calendar ID="AttenCalendar" runat="server" BackColor="White" BorderColor="SteelBlue"

                                BorderWidth="1px" Font-Names="Verdana" Font-Size="9pt" ForeColor="Black" Height="275px"

                                Width="100%" FirstDayOfWeek="Sunday" NextMonthText="Next >" PrevMonthText="< Prev"

                                NextPrevFormat="ShortMonth" ShowGridLines="false" BorderStyle="None" CssClass="monthCalendar"

                                OnDayRender="AttenCalendar_DayRender" SelectionMode="None" DayNameFormat="FirstLetter"

                                OtherMonthDayStyle-CssClass="otherMonthStyle" DayStyle-CssClass="dayStyle" DayHeaderStyle-CssClass="dayHeaderStyle"

                                WeekendDayStyle-CssClass="weekendDayStyle" TodayDayStyle-CssClass="todayStyle"

                                TitleStyle-CssClass="weekendDayStyle">
      </asp:Calendar>
    </div>
     <div>
        <asp:TextBox ID="txtId" runat="server"></asp:TextBox>
    </div>


It is assigned and displayed to my page.


这篇关于问题:日历dayrender事件触发后文本框值不可见的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆